All Projects → elevenbeans → We Voting

elevenbeans / We Voting

🙋 A Voting App based on React + Express + Mongodb

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to We Voting

Szt Bigdata
深圳地铁大数据客流分析系统🚇🚄🌟
Stars: ✭ 826 (+3076.92%)
Mutual labels:  mongodb
Pokedexvuejs
A Pokedex that will contain all 807 pokemon from the Pokemon series. Created in Vue.js
Stars: ✭ 19 (-26.92%)
Mutual labels:  mongodb
Reactjs Portfolio Mern Website
My Portfolio | Full Stack MERN Application
Stars: ✭ 25 (-3.85%)
Mutual labels:  mongodb
Geek Navigation
❤️ 极客猿梦导航-独立开发者的导航站!
Stars: ✭ 832 (+3100%)
Mutual labels:  mongodb
Node Express Boilerplate
A boilerplate for building production-ready RESTful APIs using Node.js, Express, and Mongoose
Stars: ✭ 890 (+3323.08%)
Mutual labels:  mongodb
Thriftfindr
Thriftstore review site using Node, Mongo and the Google places API
Stars: ✭ 23 (-11.54%)
Mutual labels:  mongodb
Reactivemongo
🍃 Non-blocking, Reactive MongoDB Driver for Scala
Stars: ✭ 825 (+3073.08%)
Mutual labels:  mongodb
Subnode.org
SubNode: Social Media App
Stars: ✭ 25 (-3.85%)
Mutual labels:  mongodb
Mevn Stack
Stars: ✭ 19 (-26.92%)
Mutual labels:  mongodb
Webhubbot Downloader
Download videos from xiyouMc's WebHubBot.
Stars: ✭ 24 (-7.69%)
Mutual labels:  mongodb
Devnot Workshop
[email protected] Summit 2020
Stars: ✭ 16 (-38.46%)
Mutual labels:  mongodb
Mongodb Backup Cli
mongodb-backup cli for Nodejs
Stars: ✭ 17 (-34.62%)
Mutual labels:  mongodb
Golang Sse Todo
golang server sent events (sse) example
Stars: ✭ 23 (-11.54%)
Mutual labels:  mongodb
Nodepress
😎 RESTful API service for Blog/CMS, powered by @nestjs
Stars: ✭ 829 (+3088.46%)
Mutual labels:  mongodb
Jetbrains Webcast Build With Mongodb
Code and handouts for my JetBrains webcast recorded January 30, 2018
Stars: ✭ 25 (-3.85%)
Mutual labels:  mongodb
Blog
🤣本项目有不同开发版本,最新版底层基于 abp vNext 搭建和免费开源跨平台框架 .NET5 进行开发,使用 MongoDB 存储数据,Redis 缓存数据。项目采用前后端分离的模式进行开发,API 遵循 RESTful 接口规范,页面使用 Blazor 进行开发,可作为 .NET Core 入门项目进行学习。If you liked `Blog` project or if it helped you, please give a star ⭐️ for this repository. 👍👍👍
Stars: ✭ 827 (+3080.77%)
Mutual labels:  mongodb
Mondocks
An alternative way to interact with MongoDB databases from F# that allows you to use mongo-idiomatic constructs
Stars: ✭ 20 (-23.08%)
Mutual labels:  mongodb
Javascript Fullstack Simple
Follow this tutorial using this link
Stars: ✭ 26 (+0%)
Mutual labels:  mongodb
Express Boilerplate
A fast, simple Node.js/Express + MongoDB + Vue.js web app boilerplate project
Stars: ✭ 25 (-3.85%)
Mutual labels:  mongodb
Mean Angular5 Passport Authentication
Securing MEAN Stack (Angular 5) Web Application using Passport Authentication
Stars: ✭ 24 (-7.69%)
Mutual labels:  mongodb

WeVoting

Build Status Coverage Status GitHub release PRs Welcome GitHub license

A voting APP.

View Demo online 看 Demo 请戳这里

中文介绍请点击这里 🇨🇳

Function

  • Authenticated users can:

    • create a poll with any number of possible items
    • keep their polls and come back later to access them
    • see the aggregate results of all polls(implemented using Charts)
    • vote on every polls(one time on each poll)
    • share all polls with their friends.
  • Unauthenticated users just can:

    • see the aggregate results of all polls(implemented using Charts)

Doing list

  • Unit test (Doing)
    • Coverage to 6% -- updated 2017-05-22
    • Coverage to 29% -- updated 2017-05-26
    • Coverage to 50% -- updated 2017-06-04
    • Coverage to 73% -- updated 2017-06-13
  • Code formate (Doing)
  • List page data pagination (done by @maokailu)

Contributing

I am grateful to any one for contributing bugfixes, issues and improvements~

Setup

  • Install node.js Ubuntu/Mac , Windows

  • Clone this project

     git clone https://github.com/elevenbeans/we-voting.git
     cd we-voting
    
  • Install local dependencies

     npm install
    

Startup

Development mode

For *nix (including Mac),

Run ./start.sh

Or export NODE_ENV=dev-HMR && ./start.sh (enable HMR).

For windows,

npm run bundle // compile and bundle js files

npm run start // start node server

npm run watch // watching changes

Don't forget to run Mongodb in your dev environment : )

Pre mode

Run export NODE_ENV=pre && ./start.sh.

Production mode

Run export NODE_ENV=production && ./start.sh.

Build

Run npm run build

Test

Mocha + should

Run npm run test.

Or,

Run npm run cover to see test case coverage.

Techstack overview

Server:

  • Enviroment: Node
  • Framework: Express
  • Tools: Request, compression, body-praser
  • Template engine: Ejs
  • DataBase: Mongodb

Front-end:

  • JS standard: ECMAScript 6
  • Framework: React + ReactDOM + React-Router
  • Module bundler and compiler: Webpack + Babel
  • Open source components: react-d3-components

Pages

  • home page

    • router: /
    • example: https://we-voting-ele.herokuapp.com/
  • list page

    • router: /list(/:name)
    • example: https://we-voting-ele.herokuapp.com/list
  • detail page

    • router: /detail(/:id)
    • example: https://we-voting-ele.herokuapp.com/detail/1494908221812
  • new page

    • router: /new
    • example: https://we-voting-ele.herokuapp.com/new

Directories

|-- client // front-end code
  |-- components // front-end components
    |-- footer.jsx // public footer
    |-- header.jsx // public header
    |-- loading.jsx // loading amination
    |-- spning.jsx // spning amination
  |-- lib // front-end library
    |-- utils.jsx
  |-- detail.jsx // detail page
  |-- home.jsx // home page
  |-- index.jsx // front-end intrance
  |-- list.jsx  // list page
  |-- new.jsx // new page
|-- controller // server-end controller
  |-- routes
    |-- login.js // login routes
    |-- view.js // view routes
  |-- api.js // api controller
  |-- DBhandler.js // DataBase CRUD
|-- dist // compiled front-end code
  |-- vendor
    |-- jquery.min.js
    |-- bootstrap.min.js
    |-- bootstrap.min.css
    |-- react-dom.min.js // react-dom production version
    |-- react.min.js // react production version
  |-- loading.css
  |-- vote.bundle.js // bundled voteApp intrance file
  |-- router.bundle.js // bundled react-router
  |-- detail.chunk.js // splitted JS file in detail page
  |-- home.chunk.js // splitted JS file in home page
  |-- list.chunk.js // splitted JS file in list page
  |-- new.chunk.js // splitted JS file in new page
|-- views // server-end views
  |-- error.ejs
  |-- footer.ejs
  |-- header.ejs
  |-- index.ejs
|-- .gitignore
|-- Procfile // heroku file
|-- README.md
|-- index.js // app intrance file
|-- package.json
|-- serverConfig.js // enviroment configuration
|-- start.sh // start file for mac
|-- webpack.config.js

LICENSE

MIT

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