osm-codes / site-v2 Goto Github PK
View Code? Open in Web Editor NEWPreparing a new site, based on ReactJS infrastructure
Preparing a new site, based on ReactJS infrastructure
Com a decisão por um framework de mapas abrimos caminho para o desenho das soluções de interface. Ainda não está completo, precisamos definir quando será recomendável usar mapa OpenLayers e quando usar simples SVG do map... E a partir de agora listar quais interfaces serão software standalone, com opção de qualquer um copiar em outro site, sem trabalho adicional.
... discutir aqui e em seguida documentar no /docs como diretiva do site.
Interfaces com potencial de uso standalone são aquelas usadas pelo site como se fossem bibliotecas externas, ou seja, não inclusas no código-fonte (pasta /src) do presente projeto. Para cada uma delas criaremos um projeto denominado siteInterface-Fulano
.
Por exemplo a página de navegação por geocódigos postais de um pais (ex. Colômbia) requer uma interface standalone para o governo da Colômbia tenha clareza da indendência e grau de abertura da solução. O seu projeto seria denominado Postal Code Navigation of Colombia, e mantido em https://GIT.osm.codes/siteInterface-postalCodeNav-CO
.
... discutir aqui e em seguida documentar no /docs como diretiva do site.
Páginas https://github.com/osm-codes/site-v2/blob/main/src/pages/home.js etc. precisam ser adaptadas ao OSM.codes.
Arquivos Javascriot não são tão facilmente editáveis quanto páginas estáticas de HTML5-onlyContent. Equipe composta por designers, diagramadores e revisores de texto necessita HTML padrão. Isso reduz custos e garante maior confiabilidade nas revisões.
Por exemplo a pages/home.js poderia ser home.htm
. O footer e header Javascript são constantes, de modo que o arquivo home.js
pode ser facilmente reconstruído por template:
import React from "react";
import Content from "../components/layout";
import RegionalMap from "../assets/img/regioes_atendidas.svg";
const Home = () => (
<>
<Content>
!!HTML_AQUI!!
</Content>
</>
);
export default Home;
O arquivo home.htm
seria puro HTML:
<section id="advertisment">
<p className="message">
O site da base de dados de endereços aberta, colaborativa{" "}
<span className="underlined">gratuita</span>
</p>
...
</section>
...
<section id="statutes">
<div className="col">
<p className="message">
Os nossos dados são disponiveis para download, com a informação do
tipo de licensa aberta para cada dado (CC0, CC BY ou CC BY AS, ou
equivalente)
</p>
<a href="!#" className="btn btn-blue">
Downloads
</a>
</div>
</section>
Configurar .gitignore
para eliminar /build
do repositório, tendo em vista que é informação redundante.
PS: problema nesta pasta? build/!
Usaremos Openlayers em sua versão NodeJS que gera o client-Javascript:
https://www.npmjs.com/package/ol
Aqui um texto de apresentação mais didático.
A maior parte das interfaces, com opção de navegação pelas geometrias de jurisdições, etc. pode ser implementada em React com ajuda de ilustrações SVG estáticas, previsamente convertidas de GeoJSON e otimizadas para seu uso como interface.
O framework baseado em Openlayers será usado apenas para mapas de fato.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.