Express Handlebars week 8 project. A basic CV template / skills database for FAC 15. Gives Json a good headstart on his student project!
- As a member of FAC, I want to pair with coursemates who are of a similar level, to train on workshops
- As a member of FAC, I want to help form a strong team with coursemates who have different strengths
- As a member of FAC, I want to know which coursemates are best equipped to help me with a particular coding problem
- clone repo
npm install
to install all dependencies- Create a local database with
pgcli
orpsql
(see below) node db/db_build.js
to build the database locally, as we haven't made on on Heroku yet. NOTE: Uncomment the line:// dbBuilder();
indb/db_build.js
first.config.env
should look something like this:
DATABASE_URL = postgres://<user_name>:<password>@localhost:5432/<database_name>
npm run dev
to run on port 1989. The year that Express Yourself came out. Our original project name.- Runs on staging branch
- Connect to postgres, by typing
psql
orpgcli
in the terminal. - Create the database by typing CREATE DATABASE
<database_name>
;. - Create a superuser with a password by typing CREATE USER
<user_name>
WITH SUPERUSER PASSWORD '<password>
'; (the password needs to be in quotes, otherwise you get an error). - Change ownership of the database to the new user by typing ALTER DATABASE
<database_name>
OWNER TO<user_name>
;
- app drawer nicked from project earlier in the week
- hamburger menu nicked from Colour Code, Week 1 project
- using soundbites with DOM events
- SELECT LUNCH - Posting info to one table, returning the id to enter into another table Select Lunch
- can't send headers after they were sent to the client error
- problem with database connection (on Martin's laptop), had to install pgcli new version. Much frustration.
- did an INNER JOIN to get all user data from two tables in the database. Joined user_ids to retrieve names.
- Lots of self indulgent CSS
- Posting data to server through the form
- Using a handlebars helper function
Array.sort()
method to sort by skill ascending- replicating backend rendering in the frontend (see
public/index.js
) - HackMD with some bits and bobs in
- Extensive Testing
- Login, Signup, protected routes (authentication)
- Database Testing
- Pick an original name
- Host on Heroku
- Check if user exists in database before adding
- Server side validation
- Travis CI and the fancy badges