Coder Social home page Coder Social logo

denisbarriere / ironhelp Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 386 KB

An express app, built in 1 week during Ironhack Barcelona bootcamp, to help Ironhackers with finding the "real" documentation for technologies we use, solve common development issues (Gotchas) and share awesome solutions (Awesomes).

License: MIT License

JavaScript 12.13% CSS 72.86% HTML 15.01%

ironhelp's Introduction

ironhelp

An app to help Ironhackers with finding the "real" documentation for technologies we use, solve common development issues (Gotchas) and share awesome solutions (Awesomes).

The MVP of this project was built in one week of pair programming, as part of the Ironhack Web Development Bootcamp in Barcelona (at the end of module 2, week 6 of the program).

There are a lot of things we would like to implement and improve. All is listed in a Trello board we can share.

Here is a quick presentation of the project made for the demo day: slides.com

Finally, the project is deployed to Heroku and is accessible here

Concept

Docs: "Real" documentation

The idea came from a pain we all experienced during Ironhack bootcamp. When we had to find things by reading the official documentations for a technology and were not able to find proper examples. In that case, we had to Google what we were trying to achieve and almost always were ending up on stackoverflow.

"Real" documentation are detailed explanations of things with concrete, real life examples.

We later found out that [stackoverflow](ADD URL HERE) had the same idea to build a documentation reference, powered by the community and driven by actual examples. Their project was at the BETA phase when the MVP was built.

Gotchas

A gotcha are tips to help you troubleshoot common problems quickly. For instance, "I got this issue with mongoDB... on my local". The related goatcha would be "did you check mongoDB is running on your local machine?"

Awesomes

An awesome is a cool thing that can be done with a specific technology, shared by a user.

Please have a look at the production data to get a clearer picture of docs, gotchas and awesomes.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

Prerequisites

  1. Have Node.js installed. Please see here for more installation instructions.
  2. Have mongoDB installed.

Installing

  1. Download the .zip package or clone the project to your local machine
  • If you download the .zip file, please extract it to a local directory on your machine
  1. Run the 'npm install' command in your terminal
  2. Create .env file in the root folder. It should include:
  • the URI of your local database
  • the default admin password for your user seed file
  • session duration

Here is an example:

MONGODB_URI=mongodb://localhost/ironhelp
MONGODB_ADMIN_PWD=test123
COOKIE_MAX_AGE=6000000
  1. Start mongoDB locally with the following comamnd line in your terminal: start_mongo

  2. Start the by running the following command line in another terminal: 'npm start' or 'npm run start-dev' to run the app with nodemon, so that you don't have to restart the app each time you make a change.

  3. Seed data in the following order:

  • categories
  • tools
  • admin users
  • posts - please set the right ObjectIDs (found in your local DB) for 'user', 'category' and 'tool' prior to excecution

To run the seeds: node ./bin/ (e.g. node ./bin/seed-users.js)

You are now good to go. You can access the app locally in your web browser at the following URL: http://localhost:3000/

You can create as many users, posts, categories and tools as you want in your local.

Deployment

The project is deployed to Heroku and is accessible here. Please contact us for deploying new contributions.

Built With

  • Node.js - as the JavaScript runtime environment
  • Express - as the web application framework
  • Ejs Layouts - as the layouts engine for Express
  • mongoDB - as the database program
  • mongoose - as the mongodb object modeling framework for Node.js
  • Passport - as the autehtification service for Node.js
  • Vue.js - used to perform more complex tasks that ejs-layout could not easily
  • jQuery - used for accessing elements on pages
  • Bulma - as the CSS framework based on Flexbox
  • Font Awsome - used for displaying quality icons on any screen resolution and size

Code Quality

DeepScan Grade

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Authors

See also the list of contributors who participated in this project.

License

This project is licensed under the MIT License 2017 - see the LICENSE.md file for details

Acknowledgments

  • Thanks to Ironhack’s module 2 teachers’ (Thor Jubera Albo and Tair Assimov) and TAs’ support during this intense week 6.
  • Thanks Ironhack for pairing Denis and JB for this project, it was a great match and lovely experience!

ironhelp's People

Contributors

jb-tellez avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.