Skip to content

fiuhonors/myhonors-backend

Repository files navigation

MyHonors-Backend

Travis Build System VersionEye Dependency Status

MyHonors-Backend tackles all of the server-side needs of the MyHonors platform. From initializing/authorizing sessions, file uploads, sending emails and more, MyHonors-Backend tackles all of these tasks.

Starting Development

  1. Setup the appropriate configuration settings (keys, URLs, etc.) at .config.sample.php and rename it to .config.php.
  2. composer install --dev to install all of our dependencies - both client AND development modules.
  3. robo all to run robo, our PHP task runner that automates PHP linting, executing unit tests, making sure our codebase follows PSR specification and many more.

Technology

MyHonors-Backend uses a myriad of web technologies. Some frameworks, tools, and libraries that are used are:

Libraries

Extensions

  • php-ldap Lightweight Directory Access Protocol Extension for PHP, for FIU Authentication
  • php-gd Image GD Extension for PHP, for manipulating image files

Build Process

  • Codegyre\Robo for automating tasks - a PHP task runner (like Gulp, but with PHP)
  • PHPUnit\PHPUnit for unit-testing our PHP code
  • Composer for handling our dependencies
  • Travis CI for continous-integration, ensuring the quality of our production code

Ground rules

To keep MyHonors-Backend highly scalable, it needs to follow a certain discipline in its development environment. Here are some ground rules to follow:

  • Always write your tests before you write your code - Test Driven Development!
  • Make sure that tests pass and that you are in sync with the current master branch before making a pull request/merge to the master branch!
  • Follow the PHP Framework Interop Group's PSR-2 specification coding style (which means that you must also follow the PSR-1 coding style) as well as the PSR-4 specification autoloading specification for classes, namespaces and directory structure.

About

Backend JSON API for MyHonors

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published