Skip to content

Final (group) project for CodeClan course in Professional Software Development

Notifications You must be signed in to change notification settings

crabbit-git/dinopedia

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 

Repository files navigation

Dinopedia

Dinopedia

What you see in this repository is a group project by Team Dinomite, created as our final assignment for a software development course at CodeClan with the rest of cohort WD23. Individually, we are Colette Dufficy, Sean Johnson, Heather Lamont, and Xander Mackenzie.

The assignment brief was as follows:

A client is looking to improve their online offering of educational content by developing an interactive browser application that displays information about dinosaurs in a fun and interesting way. Your task is to create a minimum viable product or prototype to put forward to them. This may only be for a small set of information, and may only showcase some of the features to be included in the final app.

Possible future extensions to functionality

  • Add a quiz on the index page (test knowledge about all dinosaurs in the app)
  • Add a comments box (primarily to demonstrate database persistence)

Dependencies

This project draws data from the dinopix API, but only as a "run once" before the application is accessed for the first time; the API is only used as a setup step to source data which will be filtered and adapted to suit the needs of the project before loading it to a MongoDB database.

Installation

If you would like to demo the (prototype!) application as it exists at the moment, you'll need a few things...

  • A contemporary web browser, such as Firefox or something WebKit/Blink based (Chromium, Chrome, Brave etc.)
  • A copy of this repository, which you can either just download with a web browser or by using git (git clone https://github.com/crabbit-git/dinopedia)
  • Node.js
  • MongoDB

Once the above is done, you can set up and run the application by doing the following:

  1. Create and seed by navigating to the server directory of your local copy of this repository in your choice of terminal then running npm run seeds
  2. Install all of the dependencies listed in client/package.json by navigating to client then running npm i
  3. Start the server by navigating to server and running npm start, which will run it on port 5000 of your local host. NOTE: I ran into an irritating compatibility issue here when testing this out recently on a different user account on macOS, which turned out to be caused by the built in AirPlay Receiver function stupidly running on port 5000 as well, despite this being a very commonly used port for development servers. You probably have two realistic options here: either disable AirPlay Receiver by switching it off in System Preferences to free up port 5000 for Dinopedia, or edit server/server.js to change the port Dinopedia's server uses from 5000 to something else.
  4. Start the client by navigating to client and running npm start there as well, which should open a demo copy of the application on your local machine, which will be hosted on port 3000 by default (http://localhost:3000)

Licence

There is currently no formal licence for this project, but this is not intended as a blanket grant of permission; the repository is public and you are permitted to clone a local copy for the demonstration purposes and/or to satisfy your own curiosity, but you would be doing so very much at your own risk as this code is provided without any warranty or guarantee of function whatsoever. It is also decidedly not for commercial use or adaptation for any other purpose at all, and is not in any way intended as a completed or production ready application; its purpose was entirely educational. In other words: it ain't our fault if you break anything after trying to use anything hosted in this repository.

About

Final (group) project for CodeClan course in Professional Software Development

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •