madClones

A collection of frameworks that I love with a strong focus on clean code, testing, software architecture/design and devops.

Github星跟蹤圖

MadClones

Dev, Staging, Master

Build Status
Build Status
Build Status

Join the chat at https://gitter.im/dwyl/chat Twitter URL

Welcome to my mono repo madClones. Started as a small monolith project to build a trello clone, it turned out to be the best project I ever started: it is basically my playground and I have lots of fun with it.

You will not only see a wide variety of front end technologies and a couple of microservices written in different languages and frameworks, but also an emphasis on software design and architecture.

I am a fan of Software Craftsmanship, TDD, BDD and CI practices; therefore this project's main goal is to follow
all the coding standard and best practices.

Do no hesitate to contribute and/or send me feedback on twitter.

Releases

Version 1.0.0

  • Create a team and add boards in it or directly add them in your personal boards.
  • Star and unstar all your boards.

Version 2.0.0

  • Card view that allows to add cards, card items
  • Move card items between cards.

Version 3.0.0

  • Boards menu. The user clicks on the boards button available in the header and can see all the boards (starred, personal and organisations) previously created.

Version 4.0.0

  • Client: Fix the boards menu filter Fix cards view not rendering correctly when it updates Update board name and star it from the cards view

  • Server: Users microservice that handles authentication (signin: validates user and generate token, signup, signout, signcheck: validates token). Trello microservice that handles boards and cards. Deploy microservices with kubernetes on google cloud. Add continuous integration with travis

Main technologies

  • ReactJs
  • Vue.js
  • Express
  • NodeJS
  • MongoDB
  • Docker
  • Kubernetes

Technologies to be added

  • Electron
  • Rabbimq (not sure yet)
  • Graphql

Support

  • Star the repo
  • Follow me on twitter @datmadmmous
  • Submit pull requests and improve the repo overall quality

Where to get help

ES6: if you want to quickly be up to date with javascript best practices,
AirBNB repo is a gold mine. Read it.

React: AirBnB and
RisingStack

NodeJS: again I will redirect you to RisingStack.
They are awesome and they care about open source.

CodinGame: practicing your algorithm solving skills is a great way to write better code. CodinGame will push you
to another level by making you think about the correct data structure, api and algorithm, to use.

Inspiration

React Trello Board: I used their implementation of React Drag and Drop because it is great

Contribution guidelines

  1. Start with the open issues
  2. No direct commit on master or develop.
  3. Create a branch from develop with issue number as a name. Example: TOC I#1 (TOC = Trello Clone and I = issue)
  4. Code should be accompanied with unit tests with 100% code coverage (whether it is on the client side or the server side).
  5. Make a pull request.
  6. End to end testing are not required for now.

Updates

  • 1.0.0 first release of trello clone
  • 2.0.0 add board view with cards and card items
  • 3.0.0 add boardsmenu

Achievements

  • Release version 1.0.0
  • Release version 2.0.0
  • Release version 3.0.0
  • Deploy react client on amazon web services S3
  • Deploy express server on amazon web services ECS

Areas for Improvements / involvement

  • Add a white background color to each board section (star, user and users)
  • Work on board header in home page : list boards and create features
  • Make UI responsive

Repository structure

The repository is divided into two folders. The Client which contains a react and a vue application and the Server which contains microservices.

I am very happy with the way both applications are structured and working daily to improve on it.

主要指標

概覽
名稱與所有者madmous/madClones
主編程語言JavaScript
編程語言HTML (語言數: 6)
平台
許可證MIT License
所有者活动
創建於2016-11-18 21:18:21
推送於2018-02-20 07:07:18
最后一次提交2017-06-21 01:54:04
發布數5
最新版本名稱v.4.0.1 (發布於 2017-06-21 01:56:57)
第一版名稱v.1.0.0 (發布於 2017-01-13 22:10:27)
用户参与
星數509
關注者數31
派生數65
提交數511
已啟用問題?
問題數11
打開的問題數4
拉請求數7
打開的拉請求數0
關閉的拉請求數0
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?