This is the website (frontend) of xRAM-Memory project, a search engine and archive of news about political subjects.
-
Content types:
- News: a archived news;
- Document: a document that could be an image, an pdf capture or other file;
- Static page: an arbitrary content page created in the backend; and
- Photo album: a set of image documents in a gallery.
-
Taxonomy types:
- Keyword: simple words associated with a piece of content
- Subject: an topic with an title e.g. "President Temer imprisonment' associated with pieces of content and with a dedicated page
This site was made using Nuxt.js 2.x, a framework based on Vue.js framework The following folder structure was adopted:
src
βββ assets
β βββ styles - global stylesheets in sass and stylus
βββ components - components sorted by feature/area of use
β βββ common
β βββ home
β βββ nav
β βββ news
β βββ search
β βββ viewers
βββ config - static configuration and constants
βββ data-sources - data services
β βββ api - REST api for the Django backend
βββ layouts - layout components
βββ middleware - functions plugged in the request/response lifecycle
βββ pages - page components
β βββ album
β β βββ _album_id.vue
β βββ contact.vue
β βββ document
β β βββ _document_id.vue
β βββ images.vue
β βββ index.vue
β βββ news
β β βββ _slug.vue
β βββ search.vue
β βββ _slug.vue
β βββ subject
β β βββ _slug.vue
β βββ subjects
β βββ subjects.vue
βββ plugins - third-party libraries and custom components
β βββ contrib
β βββ custom
βββ static - static files like images, icons and metadata
βββ store - [Vuex](https://vuex.vuejs.org/) store
By default, the front-end expect that the following services are running in the following ports:
- Django (API):
http://localhost:8000
- Contact Message Relay:
http://localhost:3001
The .env.dist
file is a template for a .env
file that should be copied into ./src
folder. This file contains the environment options that allow, e.g., changing the addresses of the services above.
Providing an .env
file is not needed unless you want to change the default values.
After installing the dependecies with yarn
, you can run the site with the following command:
yarn dev
or
npm run dev
#TODO: