Volver a proyectos
Web
1 min de lectura

Plataforma para Truenorth

Por Jeferson Heredia
13 de marzo de 2025
Webflow
Migración Web
Diseño UI/UX
Sitio Corporativo
Transformación Digital
Plataforma para Truenorth

Descripción

Desarrollé la plataforma digital completa para Truenorth, una empresa líder en transformación de negocios y tecnología en Puerto Rico que sirve a grandes empresas y clientes gubernamentales.

Este proyecto implicó la migración completa del sitio web corporativo desde WordPress a Webflow, permitiendo una experiencia de usuario más fluida y un diseño visual impactante que refleja la identidad de marca de la empresa y su enfoque en la transformación digital.

La plataforma fue diseñada para comunicar efectivamente los servicios de transformación de negocios de Truenorth, destacando su experiencia en la implementación de tecnología para servir necesidades empresariales y de gobernanza. El diseño incorpora elementos visuales que simbolizan el crecimiento y la transformación digital, como el emblemático árbol verde creciendo sobre circuitos electrónicos.

El sitio web incluye múltiples secciones funcionales como Productos, Servicios, Socios, y un sistema de navegación intuitivo que permite a los visitantes encontrar rápidamente la información que necesitan sobre las soluciones tecnológicas ofrecidas por la empresa.

Tecnologías Utilizadas

Webflow

Plataforma principal para el desarrollo y diseño del sitio

HTML5/CSS3

Estructura y estilos personalizados para componentes específicos

JavaScript

Funcionalidades interactivas y mejoras de experiencia de usuario

Figma

Diseño de wireframes y prototipos de alta fidelidad

Optimización SEO

Implementación de mejores prácticas para motores de búsqueda

Responsive Design

Diseño adaptable para todos los dispositivos

Desafíos

Migración desde WordPress

Transferir todo el contenido y funcionalidades desde WordPress a Webflow manteniendo la integridad de la información y mejorando la experiencia de usuario.

Comunicación de marca sofisticada

Crear un diseño que comunicara efectivamente la posición de Truenorth como líder en transformación de negocios y tecnología para clientes empresariales y gubernamentales.

Estructura de información compleja

Organizar una gran cantidad de información sobre servicios, productos y soluciones tecnológicas de manera clara y accesible para diferentes tipos de usuarios.

Soluciones

Estrategia de migración estructurada

Implementé un proceso de migración por fases que permitió transferir y mejorar el contenido de WordPress a Webflow de manera sistemática y sin pérdida de información.

Diseño visual impactante

Desarrollé un diseño visual que incorpora metáforas de transformación digital, como el árbol creciendo sobre circuitos, para comunicar visualmente la misión de la empresa.

Arquitectura de información optimizada

Creé una estructura de navegación intuitiva con categorías claras que permite a los usuarios encontrar rápidamente la información específica que buscan sobre los servicios de la empresa.

Galería

Página principal de Truenorth mostrando el concepto de transformación digital

Página principal de Truenorth mostrando el concepto de transformación digital

Sección de servicios destacando la transformación de procesos

Sección de servicios destacando la transformación de procesos

Versión móvil del sitio web de Truenorth

Versión móvil del sitio web de Truenorth

Ejemplo de Código

user_manager.py

from django.db import models
from django.contrib.auth.models import User
from django.utils.text import slugify
from django.urls import reverse
import uuid

class Category(models.Model):
    name = models.CharField(max_length=100)
    slug = models.SlugField(unique=True)
    description = models.TextField(blank=True)
    
    class Meta:
        verbose_name_plural = "Categories"
        
    def __str__(self):
        return self.name
        
    def save(self, *args, **kwargs):
        if not self.slug:
            self.slug = slugify(self.name)
        super().save(*args, **kwargs)

class Product(models.Model):
    id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
    name = models.CharField(max_length=200)
    slug = models.SlugField(unique=True)
    category = models.ForeignKey(Category, on_delete=models.CASCADE, related_name="products")
    description = models.TextField()
    price = models.DecimalField(max_digits=10, decimal_places=2)
    stock = models.PositiveIntegerField(default=0)
    available = models.BooleanField(default=True)
    created_at = models.DateTimeField(auto_now_add=True)
    updated_at = models.DateTimeField(auto_now=True)
    image = models.ImageField(upload_to='products/', blank=True, null=True)
    featured = models.BooleanField(default=False)
    
    class Meta:
        ordering = ['-created_at']
        
    def __str__(self):
        return self.name
        
    def save(self, *args, **kwargs):
        if not self.slug:
            self.slug = slugify(self.name)
        super().save(*args, **kwargs)
        
    def get_absolute_url(self):
        return reverse('product_detail', kwargs={'slug': self.slug})
        
    @property
    def is_in_stock(self):
        return self.stock > 0

class Order(models.Model):
    STATUS_CHOICES = (
        ('pending', 'Pending'),
        ('processing', 'Processing'),
        ('shipped', 'Shipped'),
        ('delivered', 'Delivered'),
        ('cancelled', 'Cancelled'),
    )
    
    id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
    user = models.ForeignKey(User, on_delete=models.CASCADE, related_name="orders")
    status = models.CharField(max_length=20, choices=STATUS_CHOICES, default='pending')
    created_at = models.DateTimeField(auto_now_add=True)
    updated_at = models.DateTimeField(auto_now=True)
    shipping_address = models.TextField()
    total_amount = models.DecimalField(max_digits=10, decimal_places=2)
    
    def __str__(self):
        return f"Order {self.id} - {self.user.username}"
        
    @property
    def order_items(self):
        return self.items.all()
        
    @property
    def item_count(self):
        return sum(item.quantity for item in self.order_items)

class OrderItem(models.Model):
    order = models.ForeignKey(Order, on_delete=models.CASCADE, related_name="items")
    product = models.ForeignKey(Product, on_delete=models.CASCADE)
    quantity = models.PositiveIntegerField(default=1)
    price = models.DecimalField(max_digits=10, decimal_places=2)
    
    def __str__(self):
        return f"{self.quantity} x {self.product.name}"
        
    @property
    def total_price(self):
        return self.price * self.quantity

# Views example (in views.py)
from django.shortcuts import render, get_object_or_404
from django.views.generic import ListView, DetailView
from .models import Product, Category

class ProductListView(ListView):
    model = Product
    template_name = 'shop/product_list.html'
    context_object_name = 'products'
    paginate_by = 12
    
    def get_queryset(self):
        queryset = Product.objects.filter(available=True)
        category_slug = self.kwargs.get('category_slug')
        
        if category_slug:
            category = get_object_or_404(Category, slug=category_slug)
            queryset = queryset.filter(category=category)
            
        return queryset
        
    def get_context_data(self, **kwargs):
        context = super().get_context_data(**kwargs)
        context['categories'] = Category.objects.all()
        return context

class ProductDetailView(DetailView):
    model = Product
    template_name = 'shop/product_detail.html'
    context_object_name = 'product'
    slug_url_kwarg = 'slug'

Compartir

Habilidades Python

Python Core
Data Analysis
Web Frameworks
Machine Learning
Testing

¿Interesado en un proyecto similar?

Si estás buscando implementar una solución en Python o tienes un proyecto en mente que requiera habilidades de desarrollo similares, no dudes en contactarme para discutir cómo puedo ayudarte.

Contactar