A number one destination for latest, up-to-the-minute and historic news :newspaper: currated from over 75,000 trusted worldwide sources :information_source:.
Newsman
is built with vue, vuetify and lots love :heart: :sparkling_heart:, and deployed on netlify.
Because of our believe in being progressive, we believe ths is just a work in progress :construction:. But, feel free to explore :ringed_planet: Newsman, thank you friend.
Explore the docs »
View Demo
·
Report Bug
·
Request Feature
The following is a description of the folders in this project, and how they are used. Our Application Stack is Vuetify (HTML5 with WAI-ARIA), CSS3 and VueJS (Javascript).
Application Source HTML, CSS & Javascript Files:
public
: Application Static Assets
index.html
: Application entry wrappersrc
: Main application resources
assets
: Application assets like font, images and styles
fonts
: Application fonts
images
: Application images
styles
: Application styles
components
: Application reusable components files
plugins
: Application plugins
router
: Application routes defination
store
: Application state management folder (for vuex)
modules
: Application submodules for state management
utils
: Application utility folder
services
: Application api connection and helpers folder
views
: Application entry point for our routes
layout
: Application repeated components on major pages
pages
: Application other destinations (excluding home)
main.js
: Main vue application entry file
Development Content - used to automate development & testing:
tests
: Application test
unit
: Application unit testing foldersetupTests.js
: Application test setup bootstrapped file.env
: Application environment variables
.env.production
: Application production environment variables
eslintrc.js
: Eslint configuration for the app which includes airbnb linting / style guide settings
.gitignore
: Application ignored files for commits
babel.config.js
: Babel configuration for the app
package.json
: Package file for Node that gets used during npm install
README.md
: Developer Instructions
Third Party Content ( !.gitignored ):
node_modules
: Third Party Libraries installed via package.json
during npm install
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
The things you will need in order to use the app and how to install them
Check with:
# ensure Node.js is >= 14.16.1
vue --version
Check with:
# ensure Vue CLI is >= 3.0
vue --version
This will walk you through how to setup the app on your local computer and/or machine.
npm install
npm run serve
npm run build
npm run test:unit
npm run lint
The home screen shows the available top headlines at the moment. Presently, the default is Nigeria and news source can be selected from the "news source" button on the home screen. A news or article can be searched while on the home screen using any combination of keywords. It is a web app and requires internet to operate. Arguably, the app only needs internet to start, if the user will not use more than the fetched news on initial load.
Vue 2 - The progressive javasript framework used
Material Design - The design pattern used, with the help of vuetifyjs which included material colors and material icons that was used
External libraries used in this project includes:
See also the list of contributors who participated in this project.
This project is licensed under the MIT License.
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.