Skip to main content

ionic serve for an Ionic 1.0 app with Ionic 4 CLI

I first used the Ionic framework in 2015 and it has come a long way since then and it is now up to version 4. My app, My Day To-Do is a native iOS app however it’s UI is powered by HTML5 and more importantly Ionic 1 which involves using the Ionic CLI when debugging it’s UI. Recently, I updated the Ionic CLI and that meant that I couldn’t run my Ionic 1 code the way I used to. Hence In this post, I will share my solution of how to run Ionic 1 code base with the latest Ionic CLI i.e. 4.10.3.

Problem

After updating the Ionic CLI to 4.10.3 the first error I got when trying to debug my app UI using ionic serve was,
[WARN] Could not determine project type (project config: .\ionic.config.json).
The next error was
Error: ENOENT: no such file or directory, open ‘DirectoryPath\package.json’

Solution

To solve this problem, what I had to do was to create a new blank project with the latest Ionic CLI and simply copied those files from there as follows
  1. Start a new project with ionic start newApp tabs –type=ionic1  (Remember we need to create an Ionic 1 app)
  2. Open newApp/ionic.config.json and change the name property to the name of your app
  3. Copy the ionic.config.json file to your project directory which has the Ionic 1 wwwdirectory e.g. for My Day To-Do, the structure is mydaytodo/iOSFiles/  mydaytodo/www/ so I copied the ionic.config.json to mydaytodo/
  4. Copy the newApp/package.json  to the project directory as well which in my case would be mydaytodo/
  5. Next run the npm install command in the directory, what this will do is install some of the devDependancies defined in the package.json file
Once you have copied all those files, execute the ionic serve command on your console and your old project should run.
Now one more thing, one more thing before we wrap up this post. Once you run the ionic serve command after following the above steps, you may also see another error
Error: Cannot find module ‘DirectoryName/gulpfile.js’
As before to solve this, simply copy the gulpfile.js from the newApp directory generated before and that should solve your problem.
Lastly, remember you need to generate a new Ionic project using the command
ionic start newApp tabs –type=ionic1  
Hope this helps anyone coming up against this hurdle, like I did.

Some useful links

As usual, if you find any of my posts useful and want to support me, buy or even try one of our products and leave us a review on the app store.
My Day To-Do - Smart Task List
Developer: Bhuman Soni
Price: $2.99
My Day To-Do Lite - Task list
Developer: Bhuman Soni
Price: Free+
Snap! I was there
Developer: Bhuman Soni
Price: Free

Comments

Popular posts from this blog

Upload to AWS S3 from Java API

In this post, you will see code samples for how to upload a file to AWS S3 bucket from a Java Spring Boot app. The code you will see here is from one of my open-source repositories on Github, called document-sharing. Problem Let’s say you are building a document sharing app where you allow your users to upload the file to a public cloud solution. Now, let’s say you are building the API for your app with Spring Boot and you are using AWS S3 as your public cloud solution. How would you do that? This blog post contains the code that can help you achieve that. Read more below,  Upload to AWS S3 bucket from Java Spring Boot app - My Day To-Do (mydaytodo.com)

Build a Full-Stack Image Upload App with Node.js, Express, React, and Vite (Beginner Tutorial)

 If you’re new to full-stack web development and want a hands-on project to practice React frontend integration with a Node.js + Express backend , this tutorial is for you. In this guide, we’ll walk through a simple but powerful app that lets users upload images, store them on the server, and display them back in the browser. This project is based on my GitHub repo: node-express-react-simple-fileupload . It’s designed to be beginner-friendly, SEO-optimized, and a great starting point for anyone learning JavaScript full-stack development . 🛠️ Technologies Used Here’s the tech stack powering this project: Node.js – JavaScript runtime for the backend. Express.js – Lightweight web framework for building REST APIs. Multer – Middleware for handling file uploads. CORS – Enables cross-origin requests between frontend and backend. React.js – Frontend library for building user interfaces. Vite – Fast development server and build tool for React. Fetch API – For making HTTP requests ...

Html5 based widget for an iOS app: Today extension powered by the Ionic framework

At some point the thought of adding a Widget to my iOS app came to mind which was followed by starting work on adding a widget for my app, My Day Todos . Obviously the first step was to learn how to add a Widget to an iOS app and in that learning process I discovered many things about widgets in iOS first of which was a widget in iOS is a an app extension i.e a  Today Extension . While I am still haven't finished working on the widget for my iOS app, I thought I would take some time out and share what I have learned. In this post, I will share a few important tips and provide an example of how to add a Widget to an iOS app and have the widget UI powered by Html5 via  Ionic framework . I added some code to my Github repo, Html5StarterAppWithSwift in order to show how this can be achieved. There are already too many tutorials out on the Web on how to add a Today extension to an iOS app so I won't be including that here. Instead I will focus on sharing some of the useful tip...