Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/etalab/udata-gouvfr
Skin and customization for the French opendata portal based on udata. This project is not maintained anymore. Consider using https://github.com/etalab/udata-front as an alternative.
https://github.com/etalab/udata-gouvfr
open-data open-source python udata udata-gouvfr
Last synced: about 1 month ago
JSON representation
Skin and customization for the French opendata portal based on udata. This project is not maintained anymore. Consider using https://github.com/etalab/udata-front as an alternative.
- Host: GitHub
- URL: https://github.com/etalab/udata-gouvfr
- Owner: etalab
- License: lgpl-2.1
- Archived: true
- Created: 2014-04-25T09:58:14.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2021-09-14T08:27:50.000Z (about 3 years ago)
- Last Synced: 2024-10-21T15:39:42.653Z (about 2 months ago)
- Topics: open-data, open-source, python, udata, udata-gouvfr
- Language: Python
- Homepage: https://www.data.gouv.fr/fr/
- Size: 13.2 MB
- Stars: 25
- Watchers: 9
- Forks: 34
- Open Issues: 27
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
- awesome-starred - etalab/udata-gouvfr - Skin and customization for the French opendata portal based on udata. This project is not maintained anymore. Consider using https://github.com/etalab/udata-front as an alternative. (python)
README
# udata-gouvfr
**Note: This project is not maintained anymore. Consider using [udata-front](https://github.com/etalab/udata-front) as an alternative.**
udata customizations for Etalab / Data.gouv.fr.
## Compatibility
**udata-gouvfr** requires Python 3.7+ and [udata][].
## Installation
Install [udata][].
Remain in the same Python virtual environment
and install **udata-gouvfr**:```shell
pip install udata-gouvfr
```Create a local configuration file `udata.cfg` in your **udata** directory
(or where your UDATA_SETTINGS point out) or modify an existing one as following:```python
PLUGINS = ['gouvfr']
THEME = 'gouvfr'
```## Development
Prepare a [udata development environment][udata-develop].
Note that we're using [pip-tools][udata-deps] on this repository too.
It is recommended to have a workspace with the following layout:
```shell
$WORKSPACE
├── fs
├── udata
│ ├── ...
│ └── setup.py
├── udata-gouvfr
│ ├── ...
│ └── setup.py
└── udata.cfg
```The following steps use the same Python virtual environment
and the same version of npm (for JS) as `udata`.Clone the `udata-gouvfr` repository into your workspace
and install it in development mode:```shell
git clone https://github.com/etalab/udata-gouvfr.git
cd udata-gouvfr
pre-commit install
pip install -e . -r requirements/test.pip -r requirements/develop.pip
```> NB: the `udata.(in|pip)` files are used by the CI to stay in sync with `udata` requirements. You shouldn't need to tinker with them on your local environment, but they might be updated by the CI when you make a Pull Request.
Modify your local `udata.cfg` configuration file as following:
```python
PLUGINS = ['gouvfr']
THEME = 'gouvfr'
```You can execute `udata-gouvfr` specific tasks from the `udata-gouvfr` directory.
**ex:** Build the assets:
```shell
cd udata-gouvfr
npm install
inv assets-build
```You can list available development commands with:
```shell
inv -l
```## Theme
The front-end theme for the public facing website, is split into two parts :
- The [Jinja](https://jinja.palletsprojects.com/en/2.11.x/) templates are located inside `udata_gouvfr/theme/templates`.
- The [Less](http://lesscss.org/) & other sourcefiles for the are located in `theme`.In addition we have a nice litle set of CSS Utilities to quickly build front end components, inspired by bootstrap, most of its documentation
lives in the css located in `theme/less/` and is built using [Stylemark](https://github.com/mpetrovich/stylemark), you can read the live documentation
in `udata_gouvfr/theme/stylemark/` after building it using `npm run build-stylemark`.When building pages, here are a few templates to look out for in `udata_gouvfr/theme/templates` :
- `home.html` : well, duh.
- `header.html` and `footer.html` : same idea.
- `raw.html` : contains the general html structure exposing a `body` block where we can write our page's body.
- `base.html` : contains some extra html structure exposing a `content` block for our page's content.
- `subnav-large.html`, `publish-action-modal.html` and `carousel.html` : **TODO**Here are our reusable components :
- `dataset` : datasets listings used in many pages.
- `reuse` : cards for displaying dataset reused in the real world.
- `participez` : is the large blue callout seen on multiple pages.
- `macros` : **TODO**
- `svg` : contains SVG assets to be included in our pages.### TODO
Front docs todo :
- Parcel 2 architecture
- Static copy
- Stylemark build
- VueJS compiler mode
- VanillaJS IIFE architecture
- Vue 3 architecture
- Modals
- I18n
- Config plugin
- Components
Back docs todo :
- CSS/JS file inclusion
- Static route for UI-KitWhenever a components needs some special styling, you can find their corresponding definitions inside `theme/less/specific/`,
it's best if we can avoid having too much specific styling, but sometimes you just really need it.Finally, we have a bunch of commands to make your life a tad easier, that you can run through `npm run`.
- `build`: Builds the final CSS/JS files and the UI-Kit Documentation. You should probably use this one.
- `build:app`: Builds the final CSS/JS files without the UI-Kit
- `build:stylemark`: Builds the UI-Kit files and also the CSS/JS files but unminifed (do not use those static files in production)
- `i18n:report`: Generates a report of the i18n missing and unused keys
- `i18n:extract`: Same as above, but also automatically adds missing keys to translation files
- `clean`: Cleans Parcel cache. Use this if you stumble upon weird bugs to start anew.
- `start`: Get to coding with live reload and things[udata]: https://github.com/opendatateam/udata
[udata-doc]: http://udata.readthedocs.io/en/stable/
[udata-develop]: http://udata.readthedocs.io/en/stable/development-environment/
[udata-deps]: https://udata.readthedocs.io/en/stable/development-environment/#dependency-management