Skip to content

[WIP!] - 📓 My workflow context and own code conventions

Notifications You must be signed in to change notification settings

virginiarcruz/workflow-guide

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

86 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Workflow Guide Logo

This is a work in progress and I will likely add (or replace) more functionality in the future.

Introduction

Hello there! I'm Vitor Britto, a Full Stack Developer extremely passionate about my work. I discovered the world of code almost two decades ago and kept the same passion from the first day of this discovery. I have worked full time as a freelancer for nearly 4 years developing projects for the web, and I direct part of my time to researchs, collaborative projects, development of personal projects and writing some articles for my blog.

But enough about me! I would like to present this project and why it was created.

First reason:

Apply rules and be based on a principle and methodology of process which could maintain the structure of my standards.

Second reason:

Not only have a code style guide, but relevant informations about my Workflow. Thus I always keep the same logic process and can initiate the development of my projects without any questions when making a scaffolding, building process, automation rotines, unit testing and others tasks.

This guide consists in four parts: 👻

  1. My workflow context with approaches and methods that I use.
  2. Tools that makes my Workflow easy.
  3. My own code conventions, which is inspired by what is popular within the community and flavored with some personal opinions.
  4. Major dependencies that I use with Grunt, Gulp, Bower, JSPM, Karma and NodeJS/CLI.

In the last projects, Grunt shows some unstable performance in my Wofklow. I'm not saying that grunt is worse than Gulp. No! Unfortunately, it doesn't fits on my workflow anymore.

I've been working a lot with Isomorphic Applications using JavaScript both on client and server-side. Gulp, is programmatically closer to NodeJS. I love the pipe flow at Gulp. It reminds me the UNIX System ❤️.

Table of Contents


Candidate Tools

The first tool in the list and a strong candidate to get into my workflow. So far, I'm comfortable with the free plan. I really like the way to trigger actions between apps.

Buddy is a powerful Git Hosting with Continuous Delivery tools. I create an account on the platform, but I have not tested yet.

With Stamplay I can chain together APIs as if they are Lego blocks arranging them into service based apps. If can automate tasks, connection some tools and triggering actions to build a data flow on Back-End. So, you can "create web applications without writing tons os backend codes".

An amazing all-in-one tool for Analytics & Feedback. Hotjar combines 7 tools in one to deliver more user insight for less.

I started to use this tool about 1 month. You can understand what your website users do and don't do, and why. You cant track every action.

⬆ back to top


Workflow

You can find a complete list of applications, utilities, DevOps and Business Tools here: Stack Share

This is a simple table with approaches and methods that I use at my Workflow.

Strategy Blueprint Visual Develop Build Deploy
Research Sitemap Concepting Scaffolding Lint Test
Observe Wireframe Presentation Libraries Concatenate Optimize
Understand Prototype Refine Templates Minify LAUNCH
Analyze Style Guide Approval Frameworks Compile
Timeline Usability Database

⬆ back to top

Strategy and Management

⬆ back to top

Blueprint and Visual

⬆ back to top

Development

Scaffolding

The Boilerplates repository is my personal Yeoman. I organize and setup my stacks for every kind of project. It's a kick start structure and configuration. With this guy, I can start coding in a few minutes.

Building

Transpilers Compilers Frameworks Libraries Template Engine CSS Supersets Others
Babel Electron AngularJS jQuery Pug Sass WordPress
TypeScript Cordova BackboneJS ReactJS ERB Stylus WooCommerce
        |           | Ionic      |           | Haml            | PostCSS       | Sinatra
        |           | Express    |           | EJS             |               | Rack
        |           | Slim       |           |                 |               |
        |           | Laravel    |           |                 |               |

... and much more!

Coding

Front-End:

  • HTML5
  • CSS3
  • JavaScript

Back-End:

  • NodeJS
  • Ruby
  • PHP

Editors

Lint, Optimize and Style Checker

⬆ back to top

Debug and Inspection

⬆ back to top

Metrics and Performance

⬆ back to top

Tests

Unit

REST/API

Cross-Devices/Browsers and Interfaces

Performance

Load/Stress

Integration

E2E

Regression

Mobile

⬆ back to top

Automation

⬆ back to top

Modules (bundle/load/manage)

⬆ back to top

Database

⬆ back to top

Documentation

⬆ back to top

Deployment

⬆ back to top

Versioning

⬆ back to top

PaaS

⬆ back to top

BaaS

⬆ back to top

Continuous Integration and Code Coverage

⬆ back to top

Virtual Machines and Containers

Post-Project / SEO

⬆ back to top


Guides

⬆ back to top

General Notes

  • [STRATEGY]: a mix of GTD and Scrum methods.
  • [DEVELOPMENT]: use the SOLID principles.
  • [BUILD]: all files must have two spaces (soft tab) for indentation.

Be Consistent

The point of having style guidelines is to have a common vocabulary of coding so people can concentrate on what you're saying rather than on how you're saying it. We present global style rules here so people know the vocabulary, but local style is also important. If code you add to a file looks drastically different from the existing code around it, it throws readers out of their rhythm when they go to read it. Avoid this.

Google C++ Style Guide

⬆ back to top

References

⬆ back to top

License

MIT License © Vitor Britto

About

[WIP!] - 📓 My workflow context and own code conventions

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published