Triunphmayflowerclub.com 

O Triumph Mayflower Club é uma organização dedicada à preservação do carro clássico da década de 1950, o Mayflower, do fabricante de carros britânico Triumph. O próprio clube se formou em 1974 e fez sua incursão inicial e limitada na world wide web em 2005, e então eu (Andi, manifestante do projeto) foi encomendado em 2017 para criar um novo site do zero quando meus pais se tornaram membros. Clique aqui se você estiver interessado em ler mais sobre o carro e o clube.
Este novo site está escrito no baunilla html5 para a marcação dos documentos, CSS3 para estilo, uma pequena quantidade de JavaScript (ES6) e é construída usando o Jekyll como um gerador de sites estáticos para minimizar a duplicação de código. Ele foi projetado para executar em qualquer navegador “sempre-verde” (por exemplo, Microsoft Edge, Google Chrome, Mozilla Firefox, Apple Safari ou Opera), desktop ou celular, sem problemas.
The current hosting situation for the production site is only really suitable for hosting a static HTML site (yay, budget constraints of a niche club), so it's not really practical to host anything other than that, for instance an ASP.NET Core server application for more advanced functionality, so I consider it somewhat of a personal engineering challenge to see how far I can push the limits of what can be done, feature-wise, with a static website, before having to upgrade a hospedagem para permitir uma solução cliente-servidor mais complexa.
As diferentes versões hospedadas do site podem ser encontradas nos seguintes locais, onde o servidor canário é o site do GitHub Github gerado automaticamente, com base no master mais recente, a área de estadiamento é um subdomínio do site ao vivo que implantamos manualmente quando queremos testar novos recursos e o site de produção é o site atual publicamente disponível (também implantado para manualmente):
Ah, e apenas por diversão, eis como era o site antigo para comparação!
O sistema Github Lankes é usado para incrementar a versão, tag e publicar lançamentos e é a única fonte de verdade para qual é a versão atual do site. Nenhum número de versão é explicitamente mantido nos arquivos do repo.
Como esta base de código é um site, obviamente não há necessidade de manter nenhuma filial de liberação para o backport correções, pois haverá apenas um site ao vivo que sempre terá as últimas alterações nele.
Quando uma nova versão do site é lançada via GitHub, o site consultará um endpoint específico da API do GitHub no tempo de execução para obter o número da versão mais recente da versão e a data de publicação, que é exibida ao usuário final no rodapé de cada página.
Semver é usado, embora vagamente, como um esquema de numeração de versão para o site. As peças principais , menores e patches são esbarradas para uma liberação de acordo com os seguintes tipos de alteração na base de código:
Até o momento, houve dois grandes lançamentos publicados, que estão listados abaixo com suas principais mudanças, bem como quais recursos estão em andamento para a próxima grande atualização-todo lançamento histórico já publicado desde que o vida com este novo site pode ser encontrado na página de lançamentos:
Esta é uma lista não exaustiva das coisas que eu gostaria de adicionar em desenvolvimento futuro, em nenhuma ordem específica. Obviamente, isso está sujeito a mudanças, mas deve ser uma boa indicação do que está por vir. Vou marcar as coisas como e quando eles terminarem. Quero eventualmente chegar a um estágio em que forneci ferramentas suficientes para que a maior parte do conteúdo possa ser publicada por outras pessoas, para que eu seja liberado para trabalhar principalmente na adição de novos recursos.
Eu tentei escrever esse leitura de tal maneira que aqueles que não estão necessariamente familiarizados com a codificação têm uma chance de contribuir para o desenvolvimento do site, se estiverem tão inclinados; como membros do clube. Como tal, se você já é um desenvolvedor, algumas dessas instruções podem parecer um pouco excessivamente verbosas, para que você possa pular alguns elementos. Por outro lado, se você não é muito experiente em tecnologia, recomendo ler tudo, se você quiser nos ajudar com o site-aliás, você é absolutamente bem-vindo aqui qualquer nível de experiência (se houver), por isso tentei ser o mais explícito possível com instruções, por isso, não se sinta desanimado se parecer impressionante! Envie -me um e -mail se quiser se envolver, mas poderia fazer uma mão para começar, e eu ficaria feliz em ir.
Na maioria das vezes, esses são os requisitos de minúmio nus para serem utilizados.
Embora não seja estritamente um requisito, eu pessoalmente me desenvolvo no Windows. Se você estiver no Windows, recomendo atualizar para o Windows 10, se você ainda não o fez:
Não tenho nenhum problema com os colaboradores se desenvolvendo usando o MacOS ou o Linux, supondo que você saiba o que está fazendo e siga as terminações de linha no estilo Windows ( CR+LF ). Posso expandir essas instruções no futuro se houver demanda suficiente para pessoas que desejam desenvolver em outras plataformas - sinta -se à vontade para enviar uma solicitação de tração para atualizar o ReadMe com as instruções referidas se você é um desses desenvolvedores!
O Git é o que é conhecido como Sistema de Controle de Versão (VCS) e é o que milhões de desenvolvedores em todo o mundo usam todos os dias para gerenciar suas bases de código. Ele fornece um histórico abrangente de alterações feitas no repositório de código -fonte, bem como ferramentas para ajudar vários desenvolvedores a trabalhar juntos na mesma base de código remotamente de potencialmente em qualquer lugar do planeta. O novo site Triumph Mayflower está sendo desenvolvido usando o GIT como seus VCs para fornecer uma espinha dorsal sólida para o nosso processo de desenvolvimento. Siga estas etapas para instalar o Git para o Windows:
O código -fonte do site está hospedado no Github (o site em que você está lendo atualmente). Para baixar e alterar o código-fonte, você precisará se inscrever em uma conta do GitHub:
ssh-keygencat ~/.ssh/id_rsa.pub > /dev/clipboardPara aqueles que não estão familiarizados, um "repositório" Git, ou "repositório" , é um conjunto de arquivos de código-fonte (geralmente armazenados em um servidor "remoto" centralizado em algum lugar), ao lado de metais gerenciados por Git, que contêm as informações de que o servidor é encontrado em todo o histórico, ou uma rede que se trata de contas, em toda a rede, que contêm as informações de que a código de configuração e, mais alterações, as contas de contas e, mais alterações, as informações que são alterações e, mais importantes, as contas de contas, mais importantes, as informações que são alteradas, as informações que são alteradas para as informações, que são alterações, que são as informações que são alterações e, mais importantes , as contas de contas e, em geral. foram feitos, que os criaram e como eles foram integrados de volta ao fluxo primário de código de “ramificações” temporárias, onde os desenvolvedores podem trabalhar em cópias isoladas do código sem interferir em outros desenvolvedores que trabalham na mesma base de código.
Para fazer alterações no site e ver o efeito que essas alterações têm, você precisará fazer o download do código -fonte para a sua máquina local na chamada de uma operação de "clone" . Isso baixará uma cópia do repositório de código -fonte para o seu sistema de arquivos e permitirá que ele seja gerenciado pelo Git:
C:dev ; mantenho pessoalmente meus repositórios em C:DevelopmentRepositories ).C:dev ):cd /c/devgit clone [email protected]:Stack-in-a-box/triumphmayflowerclub.com.gityes e pressione [Enter] .cd triumphmayflowerclub.comQuando você baixou uma cópia local do repositório, você precisa configurar o Git, de modo que ele o credite automaticamente como o autor de qualquer alteração de código que você fizer:
<name> pelo seu primeiro e sobrenome:git config --local user.name "<name>"<email> pelo endereço de e -mail usado para registrar sua conta do github (você não precisa das cotações de ambos os lados do endereço de e -mail, como definir seu nome na etapa anterior, pois não conterá nenhum espaço):git config --local user.email <email>Jekyll é o que é conhecido como "construtor de sites estáticos" . Ele nos permite reduzir a quantidade de código repetido em toda a base de código, "fatorando" as partes comumente usadas de uma página (como a imagem do título, barra de navegação, rodapé da página, estilos primários etc.) em arquivos únicos que são simplesmente referenciados em páginas específicas; Então, quando o Jekyll for executado para "construir" o site, ele reinsira novamente o código fatorado em cada um dos arquivos de origem que o fazem referência, criando um conjunto reconstruído de arquivos que podem ser implantados no servidor ao vivo e aberto em um navegador da web.
( Nota: no momento da redação deste artigo, que é julho de 2020, a Jekyll não suporta totalmente o WSL 2, pois não recebe todos os eventos de atualização do sistema de arquivos necessários para o recurso jekyll serve que permite a reconstrução acionada automaticamente) sempre que os arquivos de origem mudarem, então siga o WSL 1 por enquanto.)
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linuxbash , que deve se parecer com <username>@<machine>:~$ , execute o comando a seguir para atualizar a lista de pacotes que podem ser instalados e os repositórios para instalá -los (insira sua senha do Unix quando solicitado). Isso vai demorar um pouco para concluir:sudo apt-get update -y && sudo apt-get upgrade -ysudo apt-add-repository ppa:brightbox/ruby-ng (pressione [Enter] para confirmar)sudo apt-get updatesudo apt-get install ruby2.7 ruby2.7-dev build-essential (digite "y" quando solicitado)sudo gem updatesudo gem install jekyll Depois que Jekyll terminar de instalar, em uma sessão do terminal do Ubuntu, e assumindo que você escolheu C:dev como seu local para armazenar seus repositórios, execute as seguintes etapas para aumentar uma instância do servidor de desenvolvimento local:
cd /mnt/c/dev/triumphmayflowerclub.comjekyll serveServer running... press ctrl-c to stop. será exibido. Neste ponto, abra um navegador da web e navegue para http: // localhost: 4000/para visualizar o site em execução localmente a partir da cópia local do código -fonte....done in x seconds. Será mostrado, onde x é o número de segundos que levou para gerar as novas alterações). Nesse ponto, você pode atualizar a página carregada no seu navegador e as alterações aparecerão no site.( Nota: Jekyll nem sempre percebe quando novos arquivos são criados; portanto, se você atualizar o navegador e a página não estiver acessível, tente fechar o Jekyll e executá -lo novamente, e a nova página deve ser incluída na compilação.)
Eu recomendei algumas ferramentas que você pode querer usar para desenvolvimento. Nada disso é necessário, eles podem facilitar o trabalho no site.
Você precisará de um navegador da Web, de preferência baseado em cromo, como o Microsoft Edge (incluído no Windows 10) ou o Google Chrome, a fim de testar as alterações que você fizer no site antes de comprometê-los com a base de código.
Se você estiver modificando o código -fonte do site, precisará de um bom editor de texto. Eu recomendo o uso do código do Visual Studio, pois é moderno, leve, plataforma cruzada e possui muitos recursos que você normalmente encontraria em um IDE de pleno direito, como destaque da sintaxe, conclusão de código, intellisense e um grande ecossistema de plugins. Para um simples desenvolvimento de sites usando HTML de baunilha, CSS e JavaScript muito ocasional, ele deve funcionar extremamente bem fora da caixa sem nenhuma alteração de configuração ou plug -ins adicionais:
Não é uma necessidade, mas pode ser útil ao criar artigos de notícias ou conteúdo para inclusão no site, pois adiciona automaticamente caracteres tipográficos Unicode que são exigidos pelos nossos padrões de código (a serem documentados em algum momento no futuro), como "Smart Citações" , que há mais de um software de trabalho, mas é que há muito tempo, mas é que a Word Freeft.
O Photoshop é o que eu uso para edição de fotos, mas a maioria dos editores deve fazer um bom trabalho em tarefas simples de edição.
Minha visão para este projeto, à medida que evolui, é que ele começará a atrair uma pequena equipe central de desenvolvedores e colaboradores não técnicos, de modo que se torne um ótimo lugar onde aqueles que desejam sujar as mãos com algum desenvolvimento de sites de código aberto pode fazê-lo. Ter mais membros da equipe também me libertará para trabalhar em adições de recursos, principais refatores e integração de novas tecnologias.
Eventualmente, seria ótimo se eu tivesse tempo de desenvolver um conjunto simples e sob medida de ferramentas de autoria no estilo CMS que permitiriam aos membros não técnicos que os membros do clube e enviassem artigos de notícias e outros conteúdos para inclusão no site com intervenção técnica mínima ou mesmo zero. Tal como está, o site precisará atualizar manualmente por pessoas tecnicamente de mente tecnicamente no futuro próximo, mas espero chegar a esse estágio algum dia.
Para implantar o site de encenação ou ao vivo, execute o seguinte:
jekyll build_site na raiz do seu repositório, pois é aqui que Jekyll coloca a saída do processo de geração do local.beta.triumphmayflowerclub.com ou public_html , dependendo se você está implantando para o site estadiário ou ao vivo, respectivamente.index.html e renomeie updating.html para index.html . Idealmente, essa seria uma operação atômica para minimizar o risco de alguém não conseguir carregar a página inicial, mas o prazo em que isso acontece e as relativamente poucas pessoas que acessam nosso site significam que isso não é realmente um problema na prática. Isso será abordado corretamente quando começarmos a usar ações do GitHub para implantação contínua.index.html e arraste-os para o painel de destino à direita.index.html do painel de origem para o destino um para substituí -lo. A implantação agora está completa. Se você precisar entrar em contato comigo (Andi Emma Davies-Wilcox-Desenvolvedor Lead), faça-o no seguinte endereço de e-mail: [email protected]
Copyright © Stack-in-A-Box Software 2017–2021
Copyright © Triumph Mayflower Club 2005-2021