Skip to content

Latest commit

 

History

History
112 lines (107 loc) · 3.23 KB

docs.md

File metadata and controls

112 lines (107 loc) · 3.23 KB

Company Internal Docs

What should we include on internal Company Docs.

  • Info about the Company

    • Who we are
    • People (with their knowledge)
    • Who to ask to do a task
    • How to ask for a paid tool
    • How to ask for help
    • New member onboarding
    • Our Projects list (eg sheet)
    • Internal tools we use and links (communication, tasks, PM, file sharing, VCS, emails etc)
  • General:

    • How to use the PM tool
    • How to document projects
    • What kind of maintenance are we providing
    • D.O. profile
    • Contributing to Drupal (and other Open Source projects)
    • Adopt Drupal projects
    • Training of new members
    • General best practices (Do and Don't list)
  • Local Development setup

    • IDEs setup and extensions
    • Browsers and extensions
    • Docker based tools (ddev etc)
    • Other tools used (eg rsync, ssh)
    • Snippet management for the whole company (eg using an online tool)
  • VCS

    • Where are we hosting the VCS
    • Git workflow
    • PRs
    • Git branches
    • Code reviews
    • Git commit messages
    • gitignore
    • How to create releases
  • CI/CD

    • Tools we use and configuration files
    • Deployments
    • Pipelines
  • Devops

    • Setup server (PHP + extensions, MySQL, git, composer, drush launcher, nodejs, ansible etc)
    • Backups on server
    • SMTP setup
    • Cron jobs
    • SSL
    • How to ssh/sftp
    • How to update a Production site
    • Environments per Project
    • DNS
    • Private keys
    • Logging tools and setup
    • Using Docker
  • Testing

    • How do we test
    • What are we testing
    • Strech tests
    • Testing tools (online) we use
  • Drupal* related

    • Drupal modules we prefer
    • Drupal modules we avoid
    • Drupal structure
    • Custom modules
    • Setup a new Drupal project locally
    • Customize composer.json and composer scaffolding
    • yml files we use and/or override
    • txt or other files we remove from repositories
    • drush site aliases
    • settings.php and dotenv
    • How to override a Drupal distro (eg social)
    • Public and Private files paths
    • How to get a Database backup
    • How to get Public files
    • Info about Security Updates (sheet, log file etc)
    • Production launch checklist
    • Project handover (drop off) checklist
    • New Project estimation checklist
    • Existing Project estimation checklist
    • Project security audit checklist
    • Drupal development best practices (Do and Don't list)
  • Theming (Drupal)

    • How to theme
    • Modules we use for theming
    • Base themes we prefer
    • Themes we avoid
    • Theming philosophy
    • Compiling assets
    • Performance needs and testing
    • Browsers we support
    • A11y testing
    • Using paid themes
    • Twig basics and functions
  • Marketing

    • How to create Presentations for Projects (templates, branding)
    • How to use our brand
    • Email signatures
    • Publish Projects on company profile
    • Publish Projects on Drupal.org
    • Share Projects on social networks
  • Other

    • Important tools (drush, ddev, lando, robo.li, gitpod.io etc)
    • Tools we use in general for Dev tasks
  • Examples

    • Links to code examples grouped by task type (eg Drupal queues, cron tasks)
    • Links to reusable scripts (eg fix-drupal-permissions.sh)
  • For Drupal see also a more detailed list of lessons on https://github.com/theodorosploumis/drupal-lessons.

Examples