Skip to content

bitlogic/bitlogic.io

Repository files navigation

Bitlogic.io - Corporate Website

πŸš€ Modern corporate website for Bitlogic - A company specialized in agile software development and digital transformation for educational institutions.

πŸ“‹ Table of Contents

🎯 About

Bitlogic.io is a professional corporate website showcasing our expertise in software design, engineering, and agile development. We specialize in digital transformation solutions for educational institutions, helping them modernize their technological infrastructure and processes.

Key Services:

  • Agile software development
  • Digital transformation consulting
  • Educational technology solutions
  • Custom software engineering

✨ Features

  • πŸ“± Responsive Design - Optimized for all devices
  • πŸš€ Performance Optimized - Built with Gatsby.js for blazing fast loading
  • πŸ“ Content Management - Powered by Strapi headless CMS
  • πŸ“° Blog System - Dynamic blog with categorization
  • 🎨 Modern UI/UX - Built with Bootstrap 5 and custom Sass
  • πŸ” SEO Optimized - Meta tags, sitemaps, and structured data
  • πŸ“Š Analytics Ready - Google Tag Manager integration
  • 🌐 Multilingual Support - Spanish language optimization
  • β™Ώ Accessibility - WCAG compliant components
  • πŸ”§ Developer Experience - Hot reloading, linting, and formatting

πŸ›  Tech Stack

Frontend

Backend & CMS

  • CMS: Strapi - Headless content management system
  • Image Processing: Gatsby Sharp & Image plugins
  • Forms: Custom React components with validation

Development Tools

  • Package Manager: Yarn
  • Code Formatting: Prettier
  • Build Tool: Webpack
  • Bundle Analysis: Webpack Bundle Analyzer

SEO & Analytics

  • SEO: Gatsby SEO plugins with React Helmet
  • Analytics: Google Tag Manager
  • Sitemap: Automated sitemap generation
  • Robots.txt: SEO optimization

πŸ“‹ Prerequisites

Before you begin, ensure you have the following installed:

πŸš€ Installation

  1. Clone the repository

    git clone https://github.com/bitlogic/bitlogic.io.git
    cd bitlogic.io
  2. Install dependencies

    yarn install
  3. Set up environment variables

    cp .env.example .env.development
    # Edit .env.development with your configuration
  4. Start the development server

    yarn develop
  5. Open your browser Navigate to http://localhost:8000 to see the site in development mode.

πŸ’» Development

Available Scripts

# Start development server with hot reloading
yarn develop

# Build the production site
yarn build

# Serve the production build locally
yarn serve

# Clean Gatsby cache and build artifacts
yarn clean

# Format code with Prettier
yarn format

# Run tests (when implemented)
yarn test

Development Workflow

  1. Start development: yarn develop
  2. Make your changes in the src/ directory
  3. Test locally at http://localhost:8000
  4. GraphQL playground available at http://localhost:8000/___graphql
  5. Format code with yarn format before committing

Hot Reloading

The development server includes hot reloading for:

  • React components
  • Sass/CSS styles
  • GraphQL queries
  • Gatsby configuration

πŸ— Build & Deployment

Production Build

# Create optimized production build
yarn build

# Serve production build locally for testing
yarn serve

Environment Configuration

Create environment-specific files:

  • .env.development - Development settings
  • .env.production - Production settings

Key Environment Variables

# Site configuration
SITE_URL=https://bitlogic.io
STRAPI_URL=https://your-strapi-instance.com

# Analytics (production only)
GTM_ID=GTM-XXXXXXX
ENV_PROD=produccion

πŸ“ Project Structure

bitlogic.io/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ components/          # Reusable React components
β”‚   β”‚   β”œβ”€β”€ Banner/         # Hero banners
β”‚   β”‚   β”œβ”€β”€ BlogPage/       # Blog-related components
β”‚   β”‚   β”œβ”€β”€ Footer/         # Site footer
β”‚   β”‚   β”œβ”€β”€ NavBar/         # Navigation
β”‚   β”‚   β”œβ”€β”€ HomePage/       # Home page components
β”‚   β”‚   └── ...
β”‚   β”œβ”€β”€ pages/              # Gatsby pages (auto-routed)
β”‚   β”‚   β”œβ”€β”€ index.js        # Home page
β”‚   β”‚   β”œβ”€β”€ blog.js         # Blog listing
β”‚   β”‚   └── 404.js          # Not found page
β”‚   β”œβ”€β”€ templates/          # Dynamic page templates
β”‚   β”œβ”€β”€ styles/             # Global styles and Sass files
β”‚   β”œβ”€β”€ images/             # Static images and assets
β”‚   β”œβ”€β”€ constants/          # App constants and configuration
β”‚   β”œβ”€β”€ context/            # React context providers
β”‚   β”œβ”€β”€ hooks/              # Custom React hooks
β”‚   └── schema/             # GraphQL schema definitions
β”œβ”€β”€ static/                 # Static assets (served as-is)
β”œβ”€β”€ gatsby-config.js        # Gatsby configuration
β”œβ”€β”€ gatsby-node.js          # Gatsby Node APIs
β”œβ”€β”€ gatsby-browser.js       # Gatsby Browser APIs
β”œβ”€β”€ gatsby-ssr.js          # Server-side rendering config
└── package.json           # Dependencies and scripts

Component Architecture

  • Atomic Design: Components follow atomic design principles
  • Reusability: Shared components in /components
  • Styling: Each component has its own Sass file
  • Props: Well-defined PropTypes for type checking

🌍 Environment Variables

Variable Description Required Default
SITE_URL Production site URL Yes -
STRAPI_URL Strapi CMS API endpoint Yes -
GTM_ID Google Tag Manager ID No -
ENV_PROD Production environment flag No -

🀝 Contributing

We welcome contributions! Please follow these guidelines:

Getting Started

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Make your changes following our coding standards
  4. Test thoroughly in development mode
  5. Format your code: yarn format
  6. Commit your changes: git commit -m 'Add amazing feature'
  7. Push to your branch: git push origin feature/amazing-feature
  8. Open a Pull Request

Coding Standards

  • JavaScript: Follow ES6+ standards
  • React: Use functional components with hooks
  • Styling: Use Sass with BEM methodology
  • Formatting: Use Prettier (run yarn format)
  • Commits: Use conventional commit messages

Code Review Process

  1. All changes require a pull request
  2. At least one code review approval
  3. All CI checks must pass
  4. No merge conflicts

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


πŸ“ž Contact & Support


Built with ❀️ by the Bitlogic team | Specialized in educational technology and digital transformation

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 23