Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v0.11.0 #177

Draft
wants to merge 2 commits into
base: main
Choose a base branch
from
Draft

v0.11.0 #177

wants to merge 2 commits into from

Conversation

LunatiqueCoder
Copy link

@LunatiqueCoder LunatiqueCoder commented Oct 13, 2024

Introduction

When developing anything, there are usually 3 parts of the process:

  1. Make it work
  2. Make it right
  3. Make it fast

The code is a total mess, lots of TypeScript errors, bad constant namings, experiments, etc. But it's something that's working!

▶️ Video: https://x.com/LunatiqueCoder/status/1721982083902394694?s=20

How to test

  1. Git clone this branch.
  2. Change the following in the package.json:
    image

If you use TypeScript, this might be the easiest way to workaround the type errors errors. Otherwise, you might need to setup a typescript watcher instead for this step.


  1. Run yarn link
  2. If you don't have an existing drax project, you can git clone LunatiqueCoder/expo-drax-example
  3. Your metro.config.js should look like this:
// Learn more https://docs.expo.io/guides/customizing-metro
const { getDefaultConfig } = require('expo/metro-config');
const path = require('path');

/** @type {import('expo/metro-config').MetroConfig} */
const config = getDefaultConfig(__dirname);


if (__DEV__) {
  config.resolver.disableHierarchicalLookup = true;
  // 2. Let Metro know where to resolve packages and in what order
  config.resolver.nodeModulesPaths = [
    // Other packages, like redux-toolkit, might require the following as well
    path.resolve(__dirname, 'node_modules/@reduxjs/toolkit/node_modules'),

    // Because we're disabling hierarchical lookup, we have to tell what node_modules to use
    path.resolve(__dirname, 'node_modules'),
  ];

  config.resolver.enableGlobalPackages = true;
  config.watchFolders = ['/Users/myuser/OpenSource/react-native-drax'];
}

module.exports = config;
  1. Be sure to adapt the code above with your paths!
  2. Run yarn link react-native-drax
  3. Run yarn add react-native-drax@link:path-to-cloned-react-native-drax

I think npm users might have to use npm install react-native-drax@file:path-to-cloned-react-native-drax, but I'm not sure.

  1. Run the app

@LunatiqueCoder LunatiqueCoder marked this pull request as draft October 13, 2024 17:04
@LunatiqueCoder LunatiqueCoder mentioned this pull request Oct 13, 2024
9 tasks
@LunatiqueCoder LunatiqueCoder changed the title v11 v0.11 Oct 13, 2024
@LunatiqueCoder LunatiqueCoder changed the title v0.11 v0.11.0 Oct 13, 2024
@LunatiqueCoder
Copy link
Author

LunatiqueCoder commented Oct 31, 2024

Ok, so I tested this on the expo-drax-example and also on our project both mobile+web. It works pretty well. Now it's time to cleanup the code and improve it as much as possible.

Also, Drax should benefit from the new Architecture features by using for example useLayoutEffect instead of onLayout, etc, etc.

@lafiosca When it gets in a better shape, can you help me release a beta version? I'd love to get the feedback from the community as well.

@LunatiqueCoder
Copy link
Author

❤️❤️ I just love this

Screen.Recording.2024-10-31.at.09.03.23.mov

@lafiosca
Copy link
Contributor

Awesome work, I can try to help when ready!

@agonselimi
Copy link

Awesome work @LunatiqueCoder 🙌 . When is this expected to be ready?

@agonselimi
Copy link

Writing again here since I am using this great library into one of my projects, and it is a life saver. Can we expect a deadline approx. when this new version would be released? Would really appreciate your answer, and also your great work making this library work like it should again.

@simonarcher
Copy link

Also just commenting here to keep an eye on progress and if we can help test or assist with anything :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants