Comments (23)
The file format of Akira will be a JSON
file.
In the roadmap, I already have an importer feature for Sketch files, but I don't think I'll implement an export for it.
It adds an extra layer of complexity and maintenance that I can't afford. If I do that, it means I have to have a Mac and Sketch always updated in order to properly test the file with the new version, which it defeats the purpose of Akira, allowing content creators to not be tied to an OS.
Linux is the priority here.
Thanks for the suggestion.
from akira.
Is hard to keep in sync with other formats, but to avoid a complete no, we can make import/export a pluggable system, giving plumbings for anyone who wants to take care of these things.
from akira.
I agree with @Alecaddd that creating a specific exporter is a loss of time: if sketch changes the way the files are structured, then it means that you need to update the exporter, which comes at great cost.
But at the same time, if we say that akira is linux first/only, then we need ways to collaborate with others.
At the same time, i'm working with mac users with sketch, and the way i look at it, i think we need a UI unified format, like the UFO (http://unifiedfontobject.org/) for the font files, that each app should be able to handle.
Meantime, Figma just shipped an API to work with the files. Since we're using json, be sure that the api for Akira's files is well documented, and we'll have a very good starting point for collaboration.
from akira.
Thanks for the info.
Definitely, making Akira useful and usable for as many users as possible is the final goal.
For now, in this early stage of development, I'm mostly worried about making it solid, fast, and highly scalable for big projects.
Everything else will come a bit naturally in the future, and hopefully, things will be developed faster if I can slowly build a team of developers around it.
Cheers
from akira.
I love your enthusiasm but let's not get ahead of ourselves and let's try to keep our feet on the ground.
First, it'll take us years before we will be able to properly import and export sketch files. It's definitely a feature we're interested in implementing, but it's not a priority at all since we're still dealing with huge limitations due to the graphic libraries currently available on Linux.
Second, I always stick to the mantra of "do not build your house on someone else backyard".
We have thousands of cautionary tales of discontinued products, broken APIs, and projects going full closed source.
Going the extra mile and jumping on the hype wagon of a single unified and default file format is a bit dangerous right now, especially since that file format comes from a proprietary and closed source company, and it's definitely outside of our current scope.
First, let's be sure Akira works, runs well, and can empower Linux users to design interfaces with a modern workflow.
Compatibility with other proprietary software will come way later.
from akira.
Lunacy choosed Sketch file format as default file format, maybe, because the open and good specification to work with this format.
We will have Sketch on mac, Lunacy on Windows and Akira on Linux... And all Designers on all Systems sharing and colaborating arround of a good file format, or supporting these.
Figma also open Sketch files perfectly.
I'll go beyond and say que .sketch must be a default file format. I do not want to disregard all the wonderful careful work they are doing here, not to mention the investment, but I believe it would be a good discussion around this adoption.
And I believe that when you look at the specifications of that format, you will see some similarity with what you are already doing. Scold me if I'm talking silly.
from akira.
Sorry to be that guy but is there any update on this? I would pay a ridiculous fee for it if this project wasn't open source. Having access to sketch files is the ONLY thing that's keeping me from switching to Linux full-time.
from akira.
@albfan Alright, will share some files later. I'm going to be making example Sketch files for another project (though they'll have additional attributes from an add-on that you'll be able to ignore), so I'll be able to fill two needs with one deed. :)
from akira.
I've seen Lunacy on Windows struggle with .sketch files, So whilst this would be a killer feature for me, I think it's likely to be a complete sinkhole of work supporting that proprietary format from the start.
from akira.
I think that @albfan's idea for how to structure an import/export system is great. I personally would find a DXF import/export to be useful, even just for basic shapes.
from akira.
I just can say sketch file format seems to be readable.
https://github.com/AnimaApp/sketch-web-viewer. We can code a skeleton for pluggable sketch reader/writer but will take time until it is full featured, and definitely not in roadmap now.
That doesn't mean we cannot read some basic examples as PoC. Indeed that will help us to abstract a reader for svg, as we do with https://github.com/akiraux/libgtkcanvas.
Can you upload an original sketch file and a PNG/SVG capture with a real basic example so we have examples when we are ready to prototype this?
from akira.
@albfan Shopify's UI kit is provided as sketch files and is very extensive: https://polaris.shopify.com/resources/polaris-ui-kit.
I don't think I can upload one of my personal ones because they're all client work and I'm not sure how they'd feel about that.
from akira.
Hey @adrianocr, thanks for your interest in Akira.
I'm in your same situation as I'm forced to use macos for design work only due to Sketch.
Having the ability to import sketch files will come in the future, but not immediately with the first release.
It'll be tricky, especially due to the fact that sketch doesn't use only standard SVG in order to offer unsupported features like cone gradients.
Offering the ability to cross collaborate with Sketch is one of our many end goals, something that will probably happen once Akira gets a good and stable couple of releases and the user base and contributions grow.
from akira.
@albfan The Sketch file format has been officially fully documented at https://github.com/sketch-hq/sketch-file-format
from akira.
@12people If you can attach a sketch file and a screenshot at some point we can check what can be done). Some easy and complex examples would be better than only one.
from akira.
@adrianocr same for shopify, but see this could be in backlog for some time.
from akira.
@albfan Sure, let me know when you start looking into working on this. There's lots of potential for complex examples (e.g. symbols within symbols within symbols, nested PNGs with effects applied on top of them, Sketch files extended with extra attributes through add-ons, etc.), but it'd be good to know what exactly you'd be working on so I can create the suitable Sketch files.
from akira.
@12people I would the the other way, I will put here a simple sketch file and a screenshot and a complex sketch file and its screenshot. Something like https://github.com/akiraux/Akira/wiki/Artwork.
Eventually we will look at it at the right time, or design an interface so anyone could "maintain" a import/export plugin for other formats.
from akira.
Lunacy developers say supporting Sketch was worth “1.5 year of debugging”, so... not an easy task, I assume. Maybe a crowdfunding campaign for this particular feature would help? I'm ready to chip in a couple bucks, anybody else?
from akira.
@notpushkin Sketch published their file format schema only recently, in the middle of 2019: https://github.com/sketch-hq/sketch-file-format
Since Lunacy worked on supporting Sketch before this schema became available, I'm thinking adding support might be a whole lot easier now.
from akira.
Yep guys! Lunacy works natively with sketch file format and allow yet use sketch cloud to storage the project files.. Beyond this doing a good management for cloud files (edit/save/update/delete).
Will be a great feature for Akira as Sketch editor on Linux.
from akira.
As said. Provide a sketch example and a screenshot of what it represents and we can provide the plumbings to do an import/export load/save plugin (for sketch or any other format).
But implement the full spec is something we cannot promise as we don't know the changes the spec gets over time, or if our paradigm matches the one for sketch.
But would be interesting have a look!
from akira.
@albfan https://developer.sketch.com/file-format/
This help?
from akira.
Related Issues (20)
- Minimum window width cramps title unnecessarily HOT 1
- Theme preferences not respected HOT 2
- Change default branch on github HOT 1
- executable ? HOT 4
- goocanvas-3 dependency not available for most distros. HOT 3
- Akira does not enters Dark Mode! HOT 6
- Dark Theme not working HOT 1
- Operations should only add undo stacks if necessary
- Suggesting Translation (Kurdish Language) HOT 1
- [Flatpak] org.gnome.Platform version 40 is EOL HOT 1
- Is the project still in active development? HOT 1
- Collaboration with Penpot?
- Suggesting translation - Dutch Language HOT 1
- Drop Gdk.ModifierType
- Reimplement Save and Load file HOT 1
- Reimplement Export tool
- Unir, interceptar Formas incertadas HOT 3
- Convert settings.export_format to ENUM
- Inactive project HOT 3
- When installed using Flathub, Flatpak fails requiring gnome/gnome-platform 42 HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from akira.