Portal de Desenvolvimento do Fedora
Sobre o Projeto
Fedora - Portal de Desenvolvimento é um local para os programadores. Proporcionando informação sobre ferramentas, tecnologia e outras funcionalidades incluídas no Fedora. Este visa aumentar o conhecimento sobre os projetos novos e existentes entre os utilizadores.
The target audience are developers working on Fedora. Specifically: developers building on Fedora; not contributing to Fedora.
They might be either:
- Newcomers: Either choosing their Linux distribution or looking for information about how to start developing. Also searching recommendations.
- Existing Fedora Developers: Discovering what else Fedora offers and learning how to use it.
- Existing Developers: Learning about how to use their existing open source toolsets on Fedora.
Targeting on developers using Mac or even Windows and deploying to Fedora/CentOS might be considered for later iterations.
The site would help developers to:
- Explore: What tools and tech Fedora offers? (DevAssistant, Vagrant, Python, Ruby, ...)
- Build: How to use this tech? How it is packaged in Fedora?
- Deploy: Which deployment technology should I use? (Copr, Nulecule, xdg-app, Software Collections, OpenShift ...)
Recursos do Projeto
Instância de testes
Instância de testes do portal - http://developer.fedorainfracloud.org
- Content Repo - https://github.com/developer-portal/content
- Website Repo - https://github.com/developer-portal/website
- Design Mockups Repo - https://github.com/developer-portal/mockups
- #developer-portal at FreeNode - http://webchat.freenode.net/?channels=#developer-portal
- Fedora Devel Mailing List - https://lists.fedoraproject.org/mailman/listinfo/devel
Monitorização do Projeto
- Tasks + Issue Tracking: part of GitHub repositories mentioned above
The homepage need to explain clearly what is it all about and how/why you would use it. It would also show the main features from current release.
Guides on "How to start a new project" starting from the problem-to-be-solved perspective and guiding developers trough possible options.
- Aplicação da Web
- Aplicação da linha de comandos
- Aplicação da GUI da Área de Trabalho
- Aplicação móvel
- Raspberry Pi
- Arduino devices
- Other embedded devices
- Provide online documentation
- Collaborate effectively
Show what tools are available in Fedora, how they can help developers and some example use-cases.
Um exemplo: Vagrant page structure
- how to get packaged Vagrant
- how to run libvirt with vagrant without sudo
- list of plugins we maintain
- troubleshooting, how to report problems
- Fedora Vagrant boxes (links)
Mostly language/framework-specific guides about how to install it on Fedora, what is different in Fedora (if), what might be the best practise.
Each language section should include a link to a DevAssistant Assistant with hello world.
- C e C++
- Base de dados:
Um exemplo: Ruby page structure
See the Ruby page in the prototype: http://developer.fedorainfracloud.org/tech/languages/ruby/ruby-installation.html
- Instalação (both RPM and upstream)
- Explain them why we have ruby-mri bin and why we use rubypick
- Answers to how our Ruby differs from upstream
- Let users know we have a lot or RubyGems packaged
- Show them our https://github.com/zuhao/isitfedoraruby
- Let them know there is something like Fedora Ruby SIG that they can join
- 'I am a Ruby dev subpage':
- combination/listing of pages we have and are relevant
- Ruby, Rails, Vagrant, docker, DevAssistant would show up
Ways of deploying a service or distributing an app to the end users. A guide that would recommend the best option for a particular app type.
Could also include a flowchart of 1) identify app type 2) identify pkg type 3) pkg ....
- Copr (Custom RPM repositories)
- Software Collections (decoupling update cycles from host OS)
- Nulecule (multi-container network services)
- xdg-app (containers for desktop applications)
- Rolekit (package installation & configuration flows)
- OpenShift (autoscaling network application hosting)
Docker images and Vagrant boxes to download.
Agregação de blogues interessantes para programadores.