- Technologies
- Development OS
- IDE
- Coding Conventions
- Test-Driven Development
- Preferred Libraries
- Best Practices
- Design And Markup
- Search Engine Optimization
- Google Analytics & other third-party services
- Useful Links
- Node.js v12.x.x (LTS)
- npm package manager for Node.js (deprecated; using in support projects)
- yarn package manager for Node.js
- Angular for complex Enterprise solutions
- Vue.js for simple-to-moderate complexity web sites
- Pug - HTML template engine
- Stylus - CSS preprocessor
- Webpack 4.x.x - JavaScript module bundler
- TypeScript 4.x.x - optional types, classes, and modules to JavaScript
We don’t recommend use Windows as OS for development machines. We use latest Mac OS X or Ubuntu/Debian (long-term support releases are preferred).
- Keep in mind that desktop web site is not a mobile app
- Keep in mind 300 milliseconds
onClick
delay in mobile devices' browsers - Be careful with finding npm packages for your project and follow these rules:
- Check license.
- Evaluate indicators of quality, popularity and maintenance (good resource).
- Check size of package for project bundle (good resource).
- Save dependencies without automatic a major version bump.
- Periodically check for outdated dependencies (command
npm outdated
).
Web sites that we develop should be responsive and adaptive by default.
Desktop:
- Edge - last 2 major versions
- Firefox - last 2 major versions, ESR
- Chrome - last 2 major versions
- Safari 12.0 and latest
- Opera - last 2 major versions
Mobile:
- Chrome - last 2 major versions
- Mobile Safari 12.0 and latest
- Android - last 2 major versions
- Samsung Internet 11.1 and latest
- UC Browser for Android 12.3 and latest
This section is not finished yet.
- Properly setup
robots.txt
file. See robotstxt.org - Generate
sitemap.xml
file. See sitemaps.org - Use tags:
h1...h6
,p
,meta
,title
etc.
Create separate third-party service ID constant for each environment (development, staging, production). Keep constants files out of repository.
Google Analytics:
- Test account - [email protected] (see on MLSDev Articles / Accounts) - create app google analytics for staging and development servers.
- Production account is to be provided/created by/for client
Firebase:
- Test account for staging and development servers - [email protected]
- Firebase integration guide (to be replaced on MLSDev Articles page)
- Production account is to be provided/created by/for client
- Frontend Dev Bookmarks - a LOT of useful links
- Material Design Icons
- W3C
- The Twelve-Factor App