Skip to content

jtagscherer/mvp

 
 

Repository files navigation

The New elementary.io

A focused, minimum viable product (hence MVP) for a website that accompanied the release of elementary OS Freya.

Project Organization

  • Issues for individual actionable items, or bugs i.e.:
    • Design home page
    • Implement home page
    • Add payment form
    • Fix link to Wired article
  • Milestones for "releases" or overall steps, i.e.:
    • Single-page site
    • User Documentation
    • Journal
  • Reviews Do all work in branches, then submit pull requests for review when ready
    • No dummy content in master, ever.
    • small diff is best diff
    • The reviewer is the gatekeeper. Be kind of a dick.

Architecture/Philosophies

  • HTML, CSS, and JS
  • Super simple PHP-based templating system
  • No/minimal frameworks (keep it simple!)
  • Graceful degradation (don't be held back by crappy browsers)
  • Mobile-first

Templating System

  • PHP-based
  • Pages go in root as .php files
  • Include _templates/sitewide.php, set any variables, then include $template['header']; (see code-of-conduct for an example) at top of page.
  • include $template['footer']; at bottom of page.
  • Page variables:
    • $page['title']
    • $page['description']
    • $page['author']

Code Style

It's important we keep the code style consistent across collaborators and editors. We are following the official elementary code style guidelines for this project.

For quick reference:

  • 4 spaces for indentation (no tabs)
  • Comma-separated CSS rules on separate lines
  • Strip extra whitespace (on blank lines and ends of lines)

Simple Local Development

For simplicity a Vagrant file is included. To start you will need:

Then simply run vagrant up.

For bypassing Vagrant you will need:

Then inside the project directory, run php -S localhost:8000 router.php. Next, just navigate to http://localhost:8000/ to view the site.

Contributing

See guidelines for coding and translating.

About

Minimum Viable Product for our website

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 67.1%
  • CSS 19.3%
  • JavaScript 12.1%
  • Other 1.5%