Welcome to Skuteczny Plan, a signpost for young entrepreneurs and those who want to try their hand at business. These are talks about current challenges for companies, new technologies, gamification or topics related to building your own startup or products. I want to talk about complicated topics in an accessible way. Podcast hosted by Leszek W. Król.
- Nuxt 4 - framework for building Vue.js applications. It offers features like Server-Side Rendering, automatic code splitting, and static site generation, among others.
- Tailwind CSS - low-level, utility-first CSS framework that promotes highly customizable designs. It enables developers to construct complex designs by assembling utility classes in HTML, thus making CSS more reusable and maintainable.
- Pinia - lightweight and straightforward state management library for Vue.js. It offers an intuitive and Vuex-like API, making it easy to handle your application's state while improving performance and developer experience.
- @nuxtjs/i18n - tool for structuring your application to support different languages and cultural regions. It allows for dynamic translation of your application, catering to a global audience.
- @nuxt/content - file-based CMS for Nuxt, supporting Markdown, YAML, CSV and JSON content files.
- @nuxtjs/sitemap - automatically generates sitemap.xml for better SEO.
- @nuxtjs/robots - automatically generates robots.txt for search engine crawlers.
- Railway - platform for deploying and hosting applications with automatic scaling and zero-config deployments.
- Node.js >= 20.19.0
- npm >= 9.0.0
# Install dependencies
npm install
# Start development server
npm run dev
# Build for production
npm run build
# Preview production build
npm run preview
# Generate static site
npm run generateThe development server will be available at http://localhost:3000
For production deployment on Railway:
npm run build
npm startRailway will automatically detect the Node.js project and run npm install, npm run build, and npm start in sequence.
├── assets/ # Static assets (images, CSS)
│ ├── img/ # Images (avatar, podcast icons)
│ └── svg/ # SVG icons
├── components/ # Vue components
│ ├── Author.vue # Author section component
│ ├── Epizodes.vue # Episodes listing component
│ ├── Footer.vue # Footer component
│ ├── Header.vue # Header component
│ ├── Navigation.vue # Navigation component
│ └── Quotes.vue # Quotes/testimonials component
├── content/ # Content files (Markdown) - Nuxt Content v3
│ ├── pl/ # Polish content (8 articles)
│ ├── en/ # English content (8 articles)
│ ├── de/ # German content (8 articles)
│ ├── fr/ # French content (8 articles)
│ └── it/ # Italian content (8 articles)
├── content.config.ts # Nuxt Content configuration
├── layouts/ # Layout components
│ ├── blog.vue # Blog article layout
│ ├── default.vue # Default layout
│ └── empty.vue # Empty layout
├── locales/ # Translation files (i18n)
│ ├── pl-PL.json # Polish translations
│ ├── en-EN.json # English translations
│ ├── de-DE.json # German translations
│ ├── fr-FR.json # French translations
│ └── it-IT.json # Italian translations
├── pages/ # Application pages and routes
│ ├── [slug].vue # Dynamic article page
│ ├── index.vue # Homepage
│ ├── error-404.vue # 404 error page
│ ├── polityka-prywatnosci.vue # Privacy policy (PL)
│ ├── pryncypia.vue # Principles page (PL)
│ └── zasady-korzystania.vue # Terms of use (PL)
├── public/ # Public static files (favicons, images)
├── store/ # Pinia stores
│ ├── articles.js # Articles store
│ └── quotes.js # Quotes store
├── nuxt.config.ts # Nuxt configuration
└── tailwind.config.js # Tailwind CSS configuration
The application supports 5 languages:
- Polish (pl) - default
- English (en)
- German (de)
- French (fr)
- Italian (it)
Translation files are located in the locales/ directory. The content articles are stored in Markdown format in the content/ directory, organized by language code (pl, en, de, fr, it).
The project includes comprehensive SEO optimization:
- Sitemap: Automatically generated via
@nuxtjs/sitemapmodule - Robots.txt: Automatically generated via
@nuxtjs/robotsmodule - Meta tags: SEO meta tags configured per page using
useSeoMeta()composable - Open Graph: Social media sharing tags for Facebook, Twitter, etc.
- Canonical URLs: Proper canonical links for all pages
- Multilingual SEO: Hreflang tags for international content
It brings immense joy and excitement to know that you're keen on contributing to the projects I'm working on. There's always a world of possibilities that can be explored, and having talented individuals like you onboard can truly make a massive difference. Your interest is deeply appreciated, and it's a reminder of the magic ✨ that happens when open-source developers come together and collaborate.
Open-source is the foundation of many groundbreaking innovations, and it's the community of developers like you who fuel this ceaseless evolution. Your ideas 💡, your code 💻, and your passion ❤️ can significantly impact the shape of the projects and contribute to the larger world of technology.
Let's build 🛠️, create 🎨, and revolutionize 🚀 together. Let's take these projects to new heights 🏔️ and unlock their true potential. Your skills 🎯 and ideas 💭 are more than welcome here - they're necessary, valued, and have the potential to spark real change.
So, yes, absolutely, your participation is eagerly welcomed! I'm thrilled 😄 at the prospect of working with you, and I can't wait to see the incredible contributions you'll bring to these projects. Thanks again for showing your interest and excitement. It truly means the world! 🌍
Let's do this, and let's make amazing things happen together. 🚀
If you're enjoying the projects and want to send some love back my way, that's music to my ears! Your support is the fuel that keeps this creative machine running, and I am forever grateful for that.
Here are some super cool ways you can express your appreciation and help keep this development train chugging:
- 🌟 Show some love with a GitHub star on the project! It's like applause, but for coders!
- 🐦 Share the love on Twitter! Tweeting about the project helps spread the word and attract more rockstars like you. Don't forget to tag me @leszekkrol and use the hashtag
#leszekkrol!
Your voice is powerful, and your support means the world. Thank you, from the bottom of my heart, for your interest in the development of my community. 🙏
PS: Consider sponsoring my work (Leszek W. Król) on Kup mi kawę
The author of the project is:
Please use the Issue Tracker tool to submit any bug reports and feature requests. When reporting bugs, remember to provide additional information about your hardware configuration and the versions of libraries you are using.
