Feel free to [join us on Slack](http://slack.strapi.io) and ask questions about the migration process.
:::
<br>
## Getting started
Install Strapi `alpha.12.3` globally on your computer. To do so run `npm install strapi@3.0.0-alpha.12.3 -g`.
When it's done, generate a new empty project `strapi new myNewProject` (don't pay attention to the database configuration).
<br>
## Update node modules
Update the Strapi's dependencies version (move Strapi's dependencies to `3.0.0-alpha.12.3` version) of your project.
Run `npm install strapi@3.0.0-alpha.12.3 --save` to update your strapi version and then run the same command for `strapi-mongoose` or `strapi-bookshelf` depending on the module you use in your application.
If you did a custom update on one of the plugins, you will have to manually migrate your update.
:::
Copy the fields and relations you had in your `/plugins/users-permissions/models/User.settings.json` and `/plugins/users-permissions/config/jwt.json` file in the new one.
Then, delete your old `plugins` folder and replace it with the new one.
<br>
## ⚠️ Warning for SQL users
Please check your `decimal` data type. If in the past you received `string` instead of `number` the issue has been fixed.
Same thing for `boolean` type, if in the past you received `1` and `0` instead of `true` and `false`. We fixed it.
<br>
## ⚠️ Warning for GraphQL users
GraphQL timestamp attribute change. If you are using `mongoose` nothing will change for you.
If you are using `bookshelf` you will have to change `created_at` and `updated_at` by `createdAt` and `updatedAt`
<br>
## Add count route
You need to add a new route in your API.
Update the `./api/:name/config/route.json` file to add the new route. ⚠️ put it BEFORE the findOne route.
```json
{
"method": "GET",
"path": "/article/count",
"handler": "Article.count",
"config": {
"policies": []
}
}
```
Then update your controller's file and add the count action.