A team project's repository as part of 2110423 Software Engineering course 1/2017
Whalemart is a market space matching platform which allows flea market vendor and flea market lessor to make an agreement on each booth area easily.
- Docker Community Edition
17.09.0-ce
or higher - Docker Compose
1.17.0
or higher
This is used for developing in a frontend-webapp
.
- Node.js
8.9.1
or higher - Yarn
1.3.2
or higher (as anpm
replacement) - Angular CLI
1.5.0
or higher (can be installed using Yarn by using commandyarn global add @angular/cli
)
Note: nvm is recommended.
Run docker-compose up --build
within project folder. The development environment will be spinned up.
You can then access the followings:
- Webapp (build using Angular) via localhost:4200
- API Server (built using Django REST framework) via localhost:8000
- pgAdmin via localhost:5050 for Postgres database GUI access
- Username:
pgadmin4@pgadmin.org
- Password:
admin
- Host Name:
db
- Port:
5432
- Database username:
postgres
- Database password:
postgres
- Username:
- Copy
dump_images
to/webserver
folder and name it asmedia
. - Start your docker-compose or webserver and db service.
- run
import_data.sh
which is a file in the webserver folder.
- Consider branch out feature branch from
master
branch for easier management. - Do use kebab casing for branch name, and consider prefix branch name with backend or frontend. For example,
backend/facebook-login-api
andfrontend/market-page
. - Consider making a PR and having someone review your code instead of merging directly to a
master
branch.
- Consider having each commit representing only single logical change.
- Do having the first line of the commit message be a summary of the commit.
- Do capitalize the first line of the commit message, and don't end the first line with a period, e.g.
Add Facebook login API
(without trailing period). - Do use imperative mood for the first line of th commit message.
Our design team uses Sketch as a design tool for prototyping high-fidelity user interface. However, due to the limitation of versioning sketch's binary files on Git, we decided to use Kactus, the design version control, as a complement to facilitate design workflow. For further information on Kactus, please visit https://kactus.io/help/how-to/.
In order to collaborate, first, you have to clone this repository and access all available design work products inside the design
directory.
After installing Kactus, you can regenerate a sketch file from JSON by directly clicking the Regenerate Sketch File
button inside the Kactus app.
Figure 1: Regenerating sketch file in Kactus
When you make some changes to sketch files, Kactus watches those files and re-parses them automatically. Please note that at this step Kactus is required to be opened. This parsed (or exploded) view of your sketch file is what git tracks. So, you can use your preferred Git client to commit your work and push to the remote as usual.
You can also peek and leave comments on the current Whalemart's UI at https://sketch.cloud/s/ELk4v/ui/.
MIT © 2017 Snow White and the Seven Pandas