GithubHelp home page GithubHelp logo

rnuru002 / content Goto Github PK

View Code? Open in Web Editor NEW

This project forked from breatheco-de/content

0.0 0.0 0.0 45.86 MB

CMS for the BreatheCode Platform

Home Page: https://breathecode-content.breathecode.now.sh

License: MIT License

JavaScript 83.52% CSS 12.03% SCSS 4.45%

content's Introduction

Content

All Contributors

buddy pipeline

Open in Gitpod

CMS for the #BreatheCode Platform

Here is an API of all the lessons on the platform: https://content.breatheco.de/static/api/lessons.json

Requirements:

1) Markdown based

All the content must be markdown based, to create new articles all you must do is add a new .md file in markdown syntax.

2) About the URLS

The CMS needs to be able to generate URLs with the following format:

https://content.breatheco.de/<type of content>/<article id>

For example:

  https://content.breatheco.de/lesson/html_explained
  https://content.breatheco.de/error/query_selector_missing_id
  https://content.breatheco.de/how-to/search_in_google

Note: more types of content can be added in the future.

3) Types of content:

This list of contents is just a draft, some can be deleted or more can be added.

  1. Lessons: Long articles explaining big concepts like: HTML, JS Events, CSS Selectors, etc.
  2. Error: Explanation of a particular error that typically occurs when coding, for example: "Cannot do map of undefined".
  3. How To: Small articles/videos on different shot how to's, like: How to start a new react.js project.

Tagging content:

Contents can be tagged on the header of the markdown file; you can add as many tags as you want and later people will be able to search by tag.

There are two types of tags: Technology and Category.

Command Line Interface:

A small command-line tool has been developed to help manage the lessons.

$ node ./src/utils/cli.js update_lesson --slug all --statusTo draft --statusFrom null
$ node ./src/utils/cli.js update_lesson --slug learn-html --statusTo draft --statusFrom null
$ node ./src/utils/cli.js download_images --slug python-syntax --type external_images
$ node ./src/utils/cli.js localize_images --slug python-syntax --type external_images
$ node ./src/utils/cli.js sanitize_lesson --slug all

Method: sanitize_lesson

Will try to clean and fix any possible issues on the lessons, for example: Date formats

Method: update_lesson

PARAM DESCRIPTION
--slug Every lesson has a slug that identifies it, you can pass all if you want to update all at once
--statusTo change the status of one or all the lessons to a particular one
--statusFrom only apply changes to lessons with specified status

Method: download_images

PARAM DESCRIPTION
--slug Every lesson has a slug that identifies it, you can pass all if you want to update all at once
--type external_images or uploadcare

Method: localize_images

Rename the remote image url's with local images (if available), this method is ideal to run after download_images

PARAM DESCRIPTION
--slug Every lesson has a slug that identifies it, you can pass all if you want to update all at once
--statusTo change the status of one or all the lessons to a particular one
--statusFrom only apply changes to lessons with specified status

Contributors

Thanks goes to these wonderful people (emoji key):

Madelene Campos
Madelene Campos

๐Ÿ“–
Alejandro Sanchez
Alejandro Sanchez

๐Ÿ’ป
Camilo Contreras
Camilo Contreras

๐Ÿ“–
Ignacio Cordoba
Ignacio Cordoba

๐Ÿ“–
Frank
Frank

๐Ÿ“–

This project follows the all-contributors specification. Contributions of any kind welcome!

content's People

Contributors

alesanchezr avatar elviraqdp avatar camilocoo avatar jtoledo88 avatar mortegac avatar gmihov001 avatar gemmamorales avatar marcogonzalo avatar jatv93 avatar colbywtaylor avatar arielcalisaya avatar allcontributors[bot] avatar abreuy avatar giorsat avatar litzcode avatar xenogenesis20 avatar rafaelesaa avatar ajiva84 avatar thart003 avatar lombable avatar jimenaeb avatar plucodev avatar rishabhkohli avatar luigifurlani13 avatar missnutty avatar pablodevs avatar victormgomezp avatar aleguerrerom avatar madelene avatar fabianchs avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.