项目作者: brionmario

项目描述 :
🐲 A conceptual design for the official Westminster Fashion Week Festival 2019 website
高级语言: PHP
项目地址: git://github.com/brionmario/wfwf-jquery-mobile-fe.git
创建时间: 2018-10-16T16:51:15Z
项目社区:https://github.com/brionmario/wfwf-jquery-mobile-fe

开源协议:MIT License

下载



logo-text


Westminster Fashion Week Festival 2019


A conceptual design for the official Westminster Fashion Week Festival 2019 website




Build Status


All Contributors


dependencies Status


devDependencies Status


License: MIT




This project has been built on top of the jQuery Mobile Seed. If any issues or feature requests regarding the project build process arrises, please log theme here.

Quick Links

Seed Demo Contributing

Quick start

The generated project has dependencies that require node together with npm & bower.

Make sure you have Node version >= 8.0, npm >= 5 or Yarn and Bower >= 1.8

  1. # clone our repository
  2. git clone https://github.com/brionmario/wfwf-jquery-mobile-fe.git
  3. # change the directory
  4. cd wfwf-jquery-mobile-fe
  5. # install the dependencies with npm
  6. npm install
  7. # start the development server
  8. npm start

Once the dev server is fired up, it’ll automatically open up a new tab. If not, manually navigate to the Local url listed on the console.

Table of Contents

File Structure

  1. wfwf-jquery-mobile-fe/
  2. ├── coverage/ * unit test coverage reports
  3. ├── dev/ * stores development build artifacts
  4. ├── dist * stores production build artifacts
  5. ├── docs/ * contains documents and document resources
  6. ├── node_modules/ * contains dependencies pulled from npm
  7. ├── src/ * source folder
  8. ├── assets/ * static assets such as images, icons, fonts goes here
  9. ├── components/ * place all the reusable components here (eg. header, footer, sidebar etc.)
  10. ├── libs/ * place additional libraries here if it's not found on bower (eg.phpmailer)
  11. │ ├── sass/ * styles folder
  12. │ │ ├── partials/ * place all the sass partial stylesheets in this folder
  13. │ │ └── styles.scss * the main stylesheet for the project which gets compiled to CSS
  14. │ ├── scripts/ * custom javascript script files
  15. │ ├── bower_components/ * third party bower libraries will be copied here
  16. │ ├── about.php * about page of the website
  17. │ ├── booking.php * event booking page
  18. │ ├── contact.php * contact information page
  19. │ ├── event-description.php * event description page
  20. │ ├── events.php * events list page
  21. │ ├── favourites.php * favourites list page
  22. │ ├── game.php * game description page
  23. │ ├── get-directions.php * directions page
  24. │ ├── index.php * entry php file
  25. │ ├── login.php * login page
  26. │ ├── member-description.php * team member description page
  27. │ ├── members.php * team members list page
  28. │ ├── news-description.php * news description page
  29. │ ├── news.php * news list page
  30. │ ├── poi-description.php * points of interests description page
  31. │ ├── poi.php * points of interests list page
  32. │ ├── product-description.php * product description page
  33. │ ├── products.php * products list page
  34. │ ├── profile.php * profile page
  35. │ ├── sign-up.php * sign up page
  36. │ ├── sposor-video.php * sponsor video page
  37. │ └── tasks.php * task list page
  38. ├── vendor/ * packages pulled from composer will be stored here
  39. ├── .all-contributorsrc * contains info ablout repo contributors
  40. ├── .babelrc * babel config file
  41. ├── .bowerrc * bower config file
  42. ├── .buildpacks * contains heroku buildpacks
  43. ├── .dockerignore * contains files that are ignored from docker
  44. ├── .editorconfig * helps define and maintain consistent coding styles between different editors and IDEs
  45. ├── .eslintrc * ecmascript linting configuration file
  46. ├── .gitignore * contains files that are ignored from git
  47. ├── .npmrc * npm config file to house project wide custom configs
  48. ├── .nvmrc * node version manager config file
  49. ├── .pullapprove.yml * pullapprove config file
  50. ├── .sass-lint.yml * sass linting configuration file
  51. ├── .travis.yml * travis ci configuration file
  52. ├── bower.json * contains bower dependencies
  53. ├── CHANGELOG.md * changelog file
  54. ├── CONTRIBUTING.md * project contributing guidelines
  55. ├── docker-compose.yml * docker compose file
  56. ├── Dockerfile * docker config file
  57. ├── gulpfile.babel.js * main buld configuration file. contains all the gulp tasks.
  58. ├── LICENSE.md * licensing information
  59. ├── package.json * contains all the npm scripts for building, running, deploying etc. and contains all the dependencies
  60. ├── Procfile * contains commands to be executed by heroku at app startup
  61. └── README.md * Readme file for the repository

Getting Started

Prerequisites

What you need to run this app:

  • The generated project have dependencies that require node together with npm & bower.
  • Ensure you’re running the latest stable versions Node, NPM and Bower.

Make sure you have Node and NPM installed by running simple commands on the command line to see what version of each is installed.

  • Node - Type node -v on the terminal.
  • NPM - Type npm -v on the terminal.
  • Bower - Type bower -v on the terminal.

If you do not have them installed, click here and grab the latest stable version of node and npm will be automatically installed along with it. Or if you have brew already installed in your local machine, execute brew install node command to get node.

If you have npm installed, It’s really easy to grab the latest version of Bower by executing npm install -g bower which will install it globally.

Though the project is built on top of gulp, gulp is listed as a dev dependency and running npm install will install gulp as a local dependency. We’ve created npm scripts to run gulp tasks, so you don’t have to install gulp or gulp CLI globally on your working machine.

Setting Up

  • clone the repository
  • cd wfwf-jquery-mobile-fe to change the directory
  • npm install to install the dependencies with npm (installs bower dependencies as well using a post install script)

Running the app

After you have installed all dependencies you can now run the app. Run npm start to start a local server using gulp-connect-php which will watch your stylesheets and javascript files for changes, compile, minify, build and reload the browser automatically using browser-sync library.
The dev server will be opened in a new tab and usually on http://localhost:8010 and the Access URLs will be displayed on the terminal.

NOTE: gulp-connect-php does not work on some machines and incase of such scenario you might have to use a php server such as XAMPP or LAMPP. Copy the code base to htdocs folder or similar and start the server as usual using the npm start command and manually naviage to the .temp folder on the browser.

server

  1. # development
  2. npm start
  3. # production
  4. npm run server:prod

Configuration

The gulp tasks are defined inside the gulpfile.babel.js file found on the root of the application and you need to extend this file if you want to customize the application.

Add third-party dependencies

To use any third party libraries other than the included jquery, font-awesome, jquery-mobile and slick-carousel, find the package you want in the bower package repository and use the following command to add it to your project.

  1. bower install $package --save

Take a look at the bellow example:

Lets say that you want to add moment.js to your project. Just run the command bellow.

  1. bower install moment --save

NOTE: Some packages won’t work as expected and you might have to do overrides in the bower.json file.

Styling

The styles.scss file inside the sass directory is the main stylesheet for the project and will be compiled and minified into an external .css and is embedded in the index.html file.
If you want to add your own stylesheet, we recommend that you place it under the scss/partials folder and import it in the styles.scss file.

For example if you want to include the styles for a slider:

  1. Create a _slider.scss partial file in the scss/partials directory.
  2. In styles.scss add @import 'partials/slider.scss';

Testing

Execute the following command to run your unit tests. We use codecov package to generate test coverage reports and the generated reports can be found in the coverage folder.

  1. npm run test

Linting

Execute the following commands to generate linting for styles and scripts.

  1. # all
  2. npm run lint
  3. # javascript
  4. npm run lint:scripts
  5. # sass
  6. npm run lint:styles

Deployment

Building the app

For Development

Execute the following command to build your files in the development mode. A new folder called .temp will be created and the artifacts will be saved there.

  1. npm run build:dev

For Production

Execute the following command to build your files in the production mode. A new folder called dist will be created and the artifacts will be saved there.

  1. npm run build

Built With

npm
npm
npm
bower
sass
gulp

Contributing

Please read CONTRIBUTING.md for contributing guidelines and to learn about our code of conduct.

Contributors

Thanks goes to these wonderful people (emoji key):


Brion Mario

💻 📖 🐛 ⚠️

Hasitha Walpola

💻 📖 🐛 ⚠️

Thisura Sagara

💻 📖 🐛 ⚠️

Ravin Hettiarachchi

💻 📖 🐛 ⚠️

This project follows the all-contributors specification. Contributions of any kind welcome!

License

This project is licensed under the MIT License - see the LICENSE.md file for details.