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-ceor higher - Docker Compose
1.17.0or higher
This is used for developing in a frontend-webapp.
- Node.js
8.9.1or higher - Yarn
1.3.2or higher (as anpmreplacement) - Angular CLI
1.5.0or 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:
[email protected] - Password:
admin - Host Name:
db - Port:
5432 - Database username:
postgres - Database password:
postgres
- Username:
- Copy
dump_imagesto/webserverfolder and name it asmedia. - Start your docker-compose or webserver and db service.
- run
import_data.shwhich is a file in the webserver folder.
- Consider branch out feature branch from
masterbranch for easier management. - Do use kebab casing for branch name, and consider prefix branch name with backend or frontend. For example,
backend/facebook-login-apiandfrontend/market-page. - Consider making a PR and having someone review your code instead of merging directly to a
masterbranch.
- 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