All Projects → FrontEnd-ro → frontend.ro

FrontEnd-ro / frontend.ro

Licence: MIT License
Open-source tutorials and a community of developers which will help you get better.

Programming Languages

typescript
32286 projects
SCSS
7915 projects
javascript
184084 projects - #8 most used programming language
HTML
75241 projects
Handlebars
879 projects
CSS
56736 projects

Projects that are alternatives of or similar to frontend.ro

Freecodecamp.cn
FCC China open source codebase and curriculum. Learn to code and help nonprofits.
Stars: ✭ 36,576 (+89109.76%)
Mutual labels:  community, learn-to-code
Sobre
Informações gerais sobre o Centro de Treinamento
Stars: ✭ 345 (+741.46%)
Mutual labels:  community, learn-to-code
Girl-Code-It-Website-Frontend
The main website or the ed-tech platform being built for the students of GCI.
Stars: ✭ 39 (-4.88%)
Mutual labels:  community, learn-to-code
Community Search
A community-curated repository of 🔥 learning resources
Stars: ✭ 72 (+75.61%)
Mutual labels:  community, learn-to-code
Hackclub
🏫 Hack Club is a nonprofit network of computer science clubs where members learn to code through tinkering and building projects
Stars: ✭ 2,139 (+5117.07%)
Mutual labels:  community, learn-to-code
Freecodecamp
freeCodeCamp.org's open-source codebase and curriculum. Learn to code for free.
Stars: ✭ 339,510 (+827973.17%)
Mutual labels:  community, learn-to-code
training-center.github.io
Site do Centro de Treinamento
Stars: ✭ 104 (+153.66%)
Mutual labels:  community, learn-to-code
Community-Programming-Book
Community written book on Programming Languages
Stars: ✭ 31 (-24.39%)
Mutual labels:  community
it52-rails
Сайт нижегородского IT-сообщества
Stars: ✭ 17 (-58.54%)
Mutual labels:  community
isamuni
An information aggregator for Facebook groups
Stars: ✭ 14 (-65.85%)
Mutual labels:  community
medellinjs
MedellinJS
Stars: ✭ 61 (+48.78%)
Mutual labels:  community
Code-of-conduct
Code de conduite de la communauté francophone de JavaScript (ECMAScript) et Node.js
Stars: ✭ 65 (+58.54%)
Mutual labels:  community
conference-diversity-and-inclusion
Diversity and Inclusion Guidelines for Conferences
Stars: ✭ 14 (-65.85%)
Mutual labels:  community
community
This is the main CHAOSS community repository. Feel free to open an issue to discuss a topic of community interest! This repository also holds governance, mentorship, and other community-related documentation
Stars: ✭ 57 (+39.02%)
Mutual labels:  community
launchpad
Resources to get started in Quantum Computing!
Stars: ✭ 21 (-48.78%)
Mutual labels:  community
secret-islands
A virtual land scuttlebutt client
Stars: ✭ 17 (-58.54%)
Mutual labels:  community
coding-untuk-semua
Coding untuk semua, kumpulan materi-materi untuk belajar coding/pemrograman.
Stars: ✭ 18 (-56.1%)
Mutual labels:  learn-to-code
virtualcoffee.io
Public site for Virtual Coffee
Stars: ✭ 112 (+173.17%)
Mutual labels:  community
30-seconds-of-angular
Curated collection of Angular snippets that you can understand in 30 seconds or less
Stars: ✭ 24 (-41.46%)
Mutual labels:  learn-to-code
hackbunch
Hacktoberfest tracker for your community.
Stars: ✭ 11 (-73.17%)
Mutual labels:  community

frontend.ro social banner

FrontEnd.ro's open-source codebase and curriculum

FrontEnd.ro is an open-source & community driven initiative to teach FrontEnd development. Read more on the website and please share the news ^^^



Install & Run

  1. Install all the dependencies by running yarn in the root folder.
  2. Create a .env file in root and fill in the following content
; Environment based config
NODE_CONFIG_ENV=local-client

; Custom config dirs
NODE_CONFIG_DIR=server/config

; Used only when developing locally
NODE_ENV=development
  1. Run yarn dev:client. This will run only the FrontEnd locally and connect you to the development server.
  2. If you want to do server-side work you're gonna need to run the server and MongoDB on your local machine as well. For this to happen you're gonna need to add the following variables inside .env:
; Environment based config
NODE_CONFIG_ENV=local-both

; Custom config dirs
NODE_CONFIG_DIR=server/config

; AUTH
TOKEN_SECRET=

; DB
DB_CONNECT=

; AWS
AWS_BUCKET=

; EMAIL
EMAIL_TOKEN=

; GITHUB
GITHUB_CLIENT_ID=
GITHUB_CLIENT_SECRET=

; Used only when developing locally
NODE_ENV=development

Then provision the DB (see next step) and run the local server using yarn dev. Get in touch with us for more details at [email protected].

Provisioning (WIP)

If you wanna fully run the app on your local machine, you'll have to provision a MongoDB database yourself.

Have a look at the server/_provisioning folder. It's still work in progress, but you'll find there some scripts which will make it easier to insert data in bulk, for your local environment.

Database Dump, Restore and Backup

To reduce costs we're currently doing manual dumps and backup of our MongoDB database.

Dump & Restore

We're using the MongoDB Database Tools, specifically mongodump and mongorestore.

We have 2 NPM scripts

yarn mongodump
yarn mongorestore

that we use for dump/restore. We "hook" into the same .env file to get the DB_CONNECT string and the MONGODB_DUMP_DIR.

Both of them assume that MongoDB Tools is already installed. Have a look here for instructions depending on your OS.

Backup

For backup we're storing the dumps on AWS S3 by using the AWS Cli v2.

We have an NPM script that reads from .env and calls a specific cli command.

yarn upload-mongodump-s3

This doesn't work unless you're authenticated into AWS Cli with a pair Access key ID / Secret access key that has Write permission to our S3 bucket.

Monaco Editor

NextJS is incompatible with the default way of loading monaco-editor (via Webpack and monaco-editor-webpack-plugin). It fails when monaco tries to load it's CSS from node_modules: https://nextjs.org/docs/messages/css-npm.

All solutions to this meant adding very custom code to our Webpack Config, which we worry it might break in the future or negatively interact with other packages.

Thus, the solution we went for is to load monaco-editor from a CDN (cloudfront) with the <script> tag. We feel this "old-school" way is less error-prone than custom modifications to the webpack config. And, to get minimize manual work we created the monacoEditorCDN.yml GitHub action which will upload the files on every push (if they are not there).

License

This project has a dual-licence split between the source code of the UI components used and the curriculum content.

The source code of the UI components is licensed under MIT.

The curriculum belongs to our contributors and is licensed under Attribution-ShareAlike 4.0 International. You're free to use it if you're teaching these topics as long as you provide attribution to the writer/owner.

Contributors

This project wouldn't be possible without our awesome contributors. Thank you >:D<

Alexandru Păvăloi
Alexandru Păvăloi
Diana Toma
Diana Toma
Cătălin Popușoi
Cătălin Popușoi
Marian George Morosac
Marian Morosac
Cristian Gațu
Cristian Gațu
Sebastian Latkolic
Sebastian Latkolic
Nicolae Maties
Nicolae Matieș
Ira Melnic
Daniel Huțanu
Swarup Kumar Das
Swarup Kumar Das
Ira Melnic
Ira Melnic
Narcis Lazar
Narcis Lazar
Sergiu Szatmari
Sergiu Szatmari

If you wanna lend a helping hand, get in touch with us and let's build this together!


Twitter | Facebook

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].