Develop a website specifically for the CIS 440 Capstone class. The site will allow both students and companies to post project opportunities. In addition, there will be an area that shows various past projects. Students will be able to view all available projects and rank them with a up/downvote system. Students will also be able to sign up for projects directly on the site. Each project will have information provided by the company as well as Dr. Clark's comments. Additionally, each project will have tags, giving a quick overview of the desired coding language, required technologies and other characteristics.
Beta Testing: www.cis440.com
(more info coming soon!)
Please note that these instructions assume that you have initally set up Heroku with Python on your machine and are able to run Heroku commands from your Terminal application. Please visit Getting Started with Python on Heroku if this has not been set up. Follow the setup instructions through installing the Heroku ToolBelt, which will allow you to use Heroku commands within your terminal application.*
- Download source from this GitHub repo
- Create a database on Heroku via your Heroku profile.
- Using PGAdmin, connect to your Heroku database and modify the following line of code in the app.py, to match your Heroku database variables.
- With PGAdmin, use the CAPxSQL.sql file to create the correct table, with its attributes, and some dummy data on your Heroku database from steps 2-3.
- In a new Terminal window, run the following commands: git init, git add -A, git commit -m 'some comment here', heroku create, git push heroku master
- Now navigate to your Heroku Dashboard > Personal Apps and a new app should be available in the Personal Apps list.
- When launching the Heroku App from your dashboard, if you receive an application error and are operating under a free Heroku account, you will need to scale the web dynos to one. In order to do this, use the same terminal/command window from step five, and run the following command: heroku ps:scale web=1
- Follow the same steps listed in the "How to Install (without GitHub Login)" section and while modifying the app.py file in step three, you'll also need to modify the following line of code to match the Client ID and Client Secret to match the ones that you were provided if you've registered your application with Github:
S3 is used to store company logos that are uploaded via the project submission form on www.cis440.com's propose project page. Please follow the instructions below to get S3 working with the site.
- Install the boto extension to make a connection to S3 using python (from terminal, use pip install boto)
- Setup a bucket on S3 and give it a name.
- Add your AWS_Access_Key_Id and AWS_Secret_Access_Key to your app config
- Establish a connection to S3 using the boto.connect_s3(ACCESS_KEY_ID_HERE, SECRET_KEY_HERE)
- Steve Truong
- Jose Recendez
- Alex Neumann
- Sneha Dadhania
- Tom Rullestad
Release 0.1
- Added site mockups
- Added live "Hello World" demo hosted via Heroku
- Created GitHub repo
- Created Waffle.io Task Board
Release 0.2
- Added technology stack diagram
- Added Procfile for Heroku
- Added SQL file for DB table and dummy data creation
- Updated live Heroku test site link (in overview)
- Site now has HTML, CSS, & some JS
- Content is read from PostgreSQL DB
- Updated "How to Install" section
Release 0.3
- Link to Google Form used for User Survey: http://goo.gl/forms/TEXaZuHtb6
- Updated the CAPx Test Site (capxtest.herokuapp.com)
- Added content to "About & Contact" page
- Added content to "Home" page
- Added GitHub Login functionality
- Fixed the Up/Down Vote issues
- User must be logged in to vote
Release 0.4
- Link to Release 0.4 video walkthrough: https://www.youtube.com/watch?v=aK_Lo4ghw9M
Release 0.5
- Added blog edit feature
- Added blog delete feature
- Template for showroom added
- "Companies we have worked with" added to index
- Added "Express Interest" button
- More beta testing
- Cleaned up contact/about page
- Added admin feature: set project inactive
- Added admin feature: add tags to project
- Added admin feature: able to change description before submission
Release 0.6
- Added a tests folder that contains 10 different automated testing items that were created by the team
- Continued to add logo images to the logos folder
- Various additions to the site
- Admin Panel: Added a "Printable Projects" feature (allows client to create a signup form for students)
- Logo images can now be submitted as part of the propose project form