All Projects → isobar-us → Code Standards

isobar-us / Code Standards

Isobar Front-end development coding standards. Memorize them BY HEART.

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Code Standards

Is Engine
SFML C++ game engine that allows to create games on Web (HTML 5 - CSS 3), Android and PC
Stars: ✭ 94 (-92.99%)
Mutual labels:  html5, css3
My Animate
使用 HTML5 / Canvas / CSS3 制作各种动画效果
Stars: ✭ 93 (-93.06%)
Mutual labels:  html5, css3
Magz
Free Resonsive HTML5 & CSS3 Magazine Template
Stars: ✭ 64 (-95.23%)
Mutual labels:  html5, css3
Front End Course
前端知识学习汇总
Stars: ✭ 91 (-93.21%)
Mutual labels:  html5, css3
Buddycss
The framework for people who love coding!
Stars: ✭ 89 (-93.36%)
Mutual labels:  html5, css3
Pure Css3 Animated Border
Pure CSS3 animated border for all html element.
Stars: ✭ 63 (-95.3%)
Mutual labels:  html5, css3
30diasdecss
Desafio criar 30 mini projetos utilizando HTML e CSS em 30 dias
Stars: ✭ 1,203 (-10.29%)
Mutual labels:  html5, css3
Frontend Mentor Challenge
Here you will find all the challenges that we took from frontend-mentor.
Stars: ✭ 47 (-96.5%)
Mutual labels:  html5, css3
Kodeweave
HTML/CSS/JS and Markdown Playground For Web Designers and Developers
Stars: ✭ 87 (-93.51%)
Mutual labels:  html5, css3
Olog
📔 Online Note-Taking Experience | 即时灵感笔记记录平台
Stars: ✭ 79 (-94.11%)
Mutual labels:  html5, css3
Web Code Standards
通过分析 Github 众多前端代码库,总结出来的前端代码书写规范。
Stars: ✭ 61 (-95.45%)
Mutual labels:  html5, css3
Mat Video
📺 mat-video is an Angular 8/9+ video player using Material!
Stars: ✭ 96 (-92.84%)
Mutual labels:  html5, css3
Sharebook Frontend
Projeto frontend de código livre para o app Sharebook.
Stars: ✭ 59 (-95.6%)
Mutual labels:  html5, css3
Codrops Dropcast
a responsive HTML/CSS/Javascript template, comes with Sketch files and a fully working site with SCSS. It works very well for podcasts landing pages or blogs, and can be easily customized.
Stars: ✭ 91 (-93.21%)
Mutual labels:  html5, css3
Samsara
☸️ Continuous UI
Stars: ✭ 1,051 (-21.63%)
Mutual labels:  html5, css3
Redpacketrain
红包雨
Stars: ✭ 68 (-94.93%)
Mutual labels:  html5, css3
H5ui
Lightweight, elegant open source mobile UI style library.
Stars: ✭ 44 (-96.72%)
Mutual labels:  html5, css3
Nodejs Socketio Chat App
MEAN Stack & Socket.IO Real-time Chat App | A MEAN stack based Real Time chat application
Stars: ✭ 45 (-96.64%)
Mutual labels:  html5, css3
Neo
Create blazing fast multithreaded Web Apps
Stars: ✭ 1,219 (-9.1%)
Mutual labels:  html5, css3
Snapaper
📰 Past Papers Sharing Platform Based On Vue.js & GCE Guide | CAIE 试卷分享与下载平台
Stars: ✭ 90 (-93.29%)
Mutual labels:  html5, css3

Isobar Front-end Development Standards and Guidelines

License:

All content licensed under Creative Commons Attribution 3.0 Unported License

Summary:

This document contains guidelines for web applications built by the Front-end development practice of Isobar. It is to be readily available to anyone who wishes to check or contribute to the iterative progress of our discipline's best practices.

This document's primary motivation is two-fold:

  1. code consistency and
  2. best practices.

By maintaining consistency in coding styles and conventions, we can ease the burden of legacy code maintenance, and mitigate risk of breakage in the future. By adhering to best practices, we ensure optimized page loading, performance and maintainable code.

We hope to encourage other developers to think about how to best standardize their approaches to development, to propose their own ideas for debate and for inclusion in our version of the document, and to adapt our standards for their own unique development practices. What better way of achieving consensus on how best to develop in our discipline than through feedback from members of that discipline themselves?

Intent for Build and Content

We hope to separate the structure of the document from the content contained in the standards themselves. Effectively, our goal is to be able to easily update the content without having to worry about the structure.

This also enables pull requests to focus on content and forks to the content to be easily re-branded.

Viewing the Document

To view the latest, you can just clone locally:

git clone git://github.com/isobar-idev/code-standards.git

To make changes using the process in place, please use the build process. The next few sections describe this build process.

Building the Document

Requirements

The build system uses Grunt.js via Node.js and SASS via libsass.

First, install Node.js from their Web site.

Build Details

We are using Grunt to run the Assemble task to parse, populate variables, and combine files for the HTML, Markdown, and Handlebars templates.

Note: Assemble is an exceptionally active and flexible framework for building static HTML pages. It allows the usage of Handlebars, Markdown, and HTML files so we can gradually migrate to Markdown content files over time.

We suggest you check out Assemble as well.

The Gruntfile (grunt.js) includes the build for the multi-lingual copies of the document. There is a variable for standards.defaultLanguage which will determine what language the default index.html is rendered in.

To start with a clean slate, the Gruntfile has a cleanup task which will remove the previously generated index.html and associated language files.

There is also a watch task if you like to work that way.

Execute the Build

Run 'npm install' from the command line of the project directory to install all the node dependencies. You may need to occasionally re-run this command as new dependencies are added.

Windows: You may need to manually run npm install -g grunt and npm install -g grunt-cli to correctly set the path variables required to run grunt from the command line.

Run 'grunt' from the command line of the project directory to run the build process.

Structure of Page Content

The *.html files in the root are generated via grunt and should not be edited directly. There is one file per language, by language code.

./en.html
./es.html
./ru.html
...

Finally, the standards.defaultLanguage setting determines which *.html file will be copied to the index.html file.

Note: In the near future the layout and templates will be updated to include the i18l language menus.

Content

The content is written in Markdown files and the build converts it to HTML. Example:

./src/content/[lang]/css.md
./src/content/[lang]/general.md
./src/content/[lang]/html.md

...and so on.

Each of the .md files contained within these directories is a portion of the final output file. We have separated the different sections that make up the page into individual files so that it is easier to edit.

Including A Content File

The content files are included as partials and the data and order is defined in the following folder and files:

./src/content/[lang]/build/[lang].hbs
./src/content/[lang]/build/data.json

The data.json file has special significance to Assemble, do not rename this file.

Page Layout (Presentation)

The main layout is a Handlebars file that the content is injected into and language specific attributes are updated.

The file is ./src/_layouts/main.hbs.

Structure of CSS

The CSS files are generated via LibSass from the SCSS files located in the SCSS folder, which is run as part of the Grunt task.

Deploy

Because github pages only serve static content, you must push your generated files to the gh-pages branch for updates to appear online.

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].