Skip to content

Facilitates beneficial connections in a network of people.

License

Notifications You must be signed in to change notification settings

codeforbirmingham/network

 
 

Repository files navigation

We're the Birmingham Education Foundation.

You can call us, Ed.

What We Do

The unique and specific focus of our work is “Network-Building”. The Birmingham Education Foundation (Ed) is dedicated to increasing the number of students in the Birmingham City Schools that are on the path to college, career, and life readiness. We believe that this is only possible by cultivating a diverse network of people who demand excellence for our students and inspire others to do the same. We believe Network members are:

  1. Committed to deliberate actions that demonstrate their belief in and love for our students; and
  2. Intentionally connected through a set of relationships, taking advantage of opportunities to act together, and exchanging value between individuals and groups.

To actively cultivate the Network, we provide direct programming for students and fun and interactive opportunities for Network members to build new relationships and strengthen existing ones. We serve as Connectors among five different stakeholder groups – students, educators, families, local residents, and community partners– bringing them together to create a new operating culture that sparks organic and objective-driven visions to increase student preparedness for college, career, and life.

Network Asset Database Build Status

In order to reach our Network membership and action goals it is imperative that we maintain organization of our data, communication, and progress. The Network Asset Database, aka edbirmingham/network, is being developed to increase Ed’s Network activity; maintaining Membership records, supporting stewardship (progress to requests/offers between Network members), and increasing access and awareness to school/community based assets.

Contributing

Network is 100% free and open-source. We encourage and support an active, healthy community that accepts contributions from the public – including you! To maximize openness we operate according to the Collective Code Construction Contract

  • Questions? Visit our Gitter room.
  • Not sure what to work on? Check out the Stories in Ready issues at waffle. When beginning work on an issue, please move it to the waffle "In Progress" column if you are a maintainer. Otherwise, comment on the issue indicating that you are working on it.
  • Wondering how to setup a development environment? See the Super Easy, Not Too Difficult and Really Difficult setup instructions below.
  • Want to learn about the technology being used? See the Built with MEAN.JS section below.
  • Please use the Official Yo Generator when adding functionality.
  • Code style for CSS and Javascript is enforced by the automated lint tools CSSlint and JShint respectively. Execute grunt lint to ensure code conforms to project coding style.

Super Easy Setup

This setup uses Cloud9 for your development environment. Cloud9 provides an online development environment and server for you to use. All you need is a browser and good internet connection. Everything else is available on Cloud9's site.

  • Create a Github account

  • Fork Network

    • Scroll to the top of this page and click "fork" in the top right corner.
  • Setup Cloud9

    • Signup for Cloud9 IDE with your Github Account
    • Goto the Repositories link in Cloud9 IDE
    • Select "Clone to edit" on your fork of Network.
      • Note, you may see two options for Network. One is "edbirmingham/network", which you do not want to select. The other is "your name/network" which is the correct repository to select.
    • Cloud9 will soon display the development environment.
    • In the bash tab (bottom of the screen), setup a git remote to the main project:
    git remote add upstream https://github.com/edbirmingham/network.git
    
    • In the bash tab, install Node.js modules by entering the following command:
    nvm use v0.10
    npm install
    

    Note: If the command fails, you can restart the workspace by clicking in the top right corner where it says "Memory, CPU, and Disk". Then click restart in that menu.

    • In the bash tab, start up MongoDb and the application by entering the following command:
    ./startup
    
    • To view the app in the browser, select Preview from the editor menu and then select Preview Running Application. This will open the application in a tab of the editor. Log into the application with username janedoe and password password.
  • Hack away

  • Send lots of pull requests!!

  • In order to get updates from the main project use the following command in the bash tab:

git pull upstream master

Not Too Difficult Setup

This setup uses Vagrant to create a virtual machine for the development environment. The virtual machine runs on your computer. Therefore you will need a good computer with plenty of memory and hard-disk space. The virtual machine keeps all the development safely isolated to avoid conflicts with other stuff on your computer.

  • Create a Github account
  • Fork Network
  • Install VirtualBox
  • Install Vagrant
  • Clone your forked Network repo
git clone [email protected]:<your-github-id>/network.git
  • Change to the directory containing Network
  • If librarian-chef is not installed:
gem install librarian-chef
  • Download the Chef cookbooks
librarian-chef install
  • Start Vagrant virtual machine
vagrant up
  • SSH into the Vagrant virtual machine
vagrant ssh
  • Create a development user. The username is janedoe and the password is password.
grunt initdb
  • Run the application
grunt
  • Open the application in your browser
http://localhost:3000

Really Difficult Setup

This setup is for those who want complete control of their development environment, love wrestling with install scripts and who refer to dependency resolution as "Dependency Heaven".

  • Look at the Vagrantfile and install all that stuff. Good luck. :)

Built with MEAN.JS

Network is built on the MEAN.JS stack. It is Javascript all the way down folks. If you are unfamiliar with this stack or any of its individual parts, there are documentation links below.

MEAN.JS Logo

MEAN.JS is a full-stack JavaScript open-source solution, which provides a solid starting point for MongoDB, Node.js, Express, and AngularJS based applications. The idea is to solve the common issues with connecting those frameworks, build a robust framework to support daily development needs, and help developers use better practices while working with popular JavaScript components.

MEAN.JS Building Blocks

Before you begin we recommend you be familiar with the basic building blocks that assemble a MEAN.JS application:

Understanding MEAN.JS

There is a lot to understand, we recommend you go over the Official Documentation. The docs explain both general concepts of MEAN components and give some guidelines to help improve the development process.

MEAN.JS Community

About

Facilitates beneficial connections in a network of people.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 79.2%
  • HTML 20.2%
  • Other 0.6%